lablup / lablup/backend.ai

Verify OIDC image publishing end-to-end with an rc tag and document the pipeline

Open
#13,588 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
15h 13m
Merged PRs (30d)
368

Description

## Motivation

The OIDC ruleset, environment claim, multi-arch build, and tagging logic can only be proven against the live Docker Hub org. An rc tag exercises the whole chain without touching `latest`.

## Details

1. Push the next rc tag (or rerun via `workflow_dispatch` on an existing rc tag) and watch the full chain: `build-wheels` → `docker-images`.
1. Verify on Docker Hub: all seven `lablup/backend.ai-*` repositories (including `lablup/backend.ai-agent`, BA-7271) received the version tag, both `linux/amd64` and `linux/arm64` manifests exist, and `latest` was NOT moved (rc is a prerelease).
1. Verify OIDC: workflow logs show token-exchange login (no secret usage); confirm a run outside the `deploy-to-dockerhub` environment cannot log in (ruleset rejects, visible in the connection's Failures tab).
1. Smoke-test images: `docker run lablup/backend.ai-manager: python -c "import ai.backend.manager"` (or equivalent entrypoint check). For the agent image, additionally run the DooD end-to-end check from BA-7271 (socket mount + path parity + host network spawns a kernel).
1. On the next final release, confirm `latest` is applied.
1. Documentation in the same PR series: `scripts/README.md` rows for new scripts, workflow header comment describing the OIDC setup (connection ID variable, environment name), and any operator notes for rotating/re-creating the OIDC connection.

Depends on: all other tasks in the epic.

## Success Criteria

- One rc and one final release published images correctly with OIDC-only auth.
- Negative test confirms the ruleset blocks non-release contexts.
- Documentation updated.

JIRA Issue: BA-7270

Contributor guide

Open the contributing guide

Research direction

Start with the build-wheels → docker-images workflow chain and the existing scripts/README.md entries. Run an rc-tag or workflow_dispatch publication, verify the seven Docker Hub repositories, manifests, OIDC logs, negative ruleset test, and smoke checks. Done means one rc and one final release pass the stated checks and the workflow and operator documentation is updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, github-actions, python
Domain
ci-cd, cloud, devops, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.