Skip to content

release: Add the scripts to publish to az marketplace#3812

Open
sayanchowdhury wants to merge 3 commits intomainfrom
sayan/integrate-azurevm-release
Open

release: Add the scripts to publish to az marketplace#3812
sayanchowdhury wants to merge 3 commits intomainfrom
sayan/integrate-azurevm-release

Conversation

@sayanchowdhury
Copy link
Member

@sayanchowdhury sayanchowdhury commented Mar 10, 2026

Add Azure marketplace publishing to Jenkins pipeline to load the items into draft.

To be merged with https://github.com/flatcar/jenkins-os/pull/417

Signed-off-by: Sayan Chowdhury <sayan.chowdhury2012@gmail.com>
-e AZ_SECRET_VALUE="${AZ_SECRET_VALUE}" \
-v "${PWD}"/ci-automation/release/azure_marketplace_publish.py:/app/azure_marketplace_publish.py \
-w /app \
ghcr.io/astral-sh/uv:alpine \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be something to mirror on our ghcr?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here I'm directly using the uv package from that of astral-sh - works fine in Jenkins.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here I'm wondering mostly about mirroring ghcr.io/astral-sh/uv:alpine on Flatcar as, say, ghcr.io/flatcar/uv. We do something like that for some docker images that we use in kola tests.

Comment on lines +262 to +263
if not args.test_mode and plan not in ("alpha", "beta", "stable", "lts2022", "lts2023", "lts2024"):
logging.error("plan value should be either alpha, beta, stable, lts2024, lts2023 or lts2022")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably would be nicer to get the lts list from the lts-info file.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated to pull the channels from channel-info file

logging.error("Required: AZ_TENANT_ID, AZ_CLIENT_ID, AZ_SECRET_VALUE")
return

access_token = generate_partner_center_token(tenant_id, client_id, secret_value)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this generate a new access token every time or returns the same thing? If the former, should we destroy those after publishing?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this token gets generated everytime we run the script - and this is not stored on disk anywhere.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, I was mostly wondering if information about those tokens is stored somewhere on Azure, so at some point we hit a limit of generated tokens or something, because we didn't remove them or something.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, we won't hit limit. Since this is used only for release - at max we would be generating 4-5 tokens in every few days.

Signed-off-by: Sayan Chowdhury <sayan.chowdhury2012@gmail.com>
Co-authored-by: Krzesimir Nowak <knowak@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ⚒️ In Progress

Development

Successfully merging this pull request may close these issues.

2 participants