Skip to content

Revert "[ci][docker] Nightly Docker image update"#18723

Closed
tqchen wants to merge 1 commit intomainfrom
revert-18710-nightly-docker-update
Closed

Revert "[ci][docker] Nightly Docker image update"#18723
tqchen wants to merge 1 commit intomainfrom
revert-18710-nightly-docker-update

Conversation

@tqchen
Copy link
Member

@tqchen tqchen commented Feb 7, 2026

Reverts #18710

Seems there is some issue in terms of the images, i think perhaps we should disable docker auto-updates, and instead relies on manual bump, we will need use https://github.com/apache/tvm/blob/main/ci/jenkins/docker-images.ini as ground truth

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @tqchen, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request aims to restore stability to the CI system by reverting an earlier update to nightly Docker images. The change specifically rolls back the image tags in the configuration file to known stable versions, addressing reported issues with the recently updated images. This action also signals a potential shift towards a more controlled, manual process for managing Docker image updates to ensure reliability.

Highlights

  • Revert Nightly Docker Image Update: This pull request reverts a previous change ([ci][docker] Nightly Docker image update #18710) that updated nightly Docker images, addressing issues encountered with the newer images.
  • Docker Image Tag Rollback: The Docker image tags defined in ci/jenkins/data.py have been rolled back to their older, stable versions for various CI environments including ARM, CPU, GPU, Hexagon, i386, Lint, and WASM.
  • Proposed Manual Updates: The author suggests disabling automatic Docker image updates and instead relying on manual updates, using ci/jenkins/docker-images.ini as the source of truth, to prevent future issues.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • ci/jenkins/data.py
    • Reverted the tag values for all docker_images entries (ci_arm, ci_cpu, ci_gpu, ci_hexagon, ci_i386, ci_lint, ci_wasm) to their previous, stable versions.
Activity
  • The pull request was created by tqchen to revert a previous change related to Docker image updates, indicating an issue with the recently deployed images.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This PR correctly reverts the Docker image tags to a previous, stable version. My review includes a suggestion to refactor the image definitions to use a single source of truth, as you mentioned in the PR description. This will improve maintainability by eliminating the duplicate image definitions.

Comment on lines 52 to 81
docker_images = {
"ci_arm": {
"tag": "tlcpack/ci-arm:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-arm:20221013-060115-61c9742ea",
"platform": "ARM",
},
"ci_cpu": {
"tag": "tlcpack/ci-cpu:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-cpu:20221013-060115-61c9742ea",
"platform": "CPU",
},
"ci_gpu": {
"tag": "tlcpack/ci-gpu:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-gpu:20221019-060125-0b4836739",
"platform": "GPU",
},
"ci_hexagon": {
"tag": "tlcpack/ci-hexagon:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-hexagon:20221013-060115-61c9742ea",
"platform": "CPU",
},
"ci_i386": {
"tag": "tlcpack/ci-i386:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-i386:20221013-060115-61c9742ea",
"platform": "CPU",
},
"ci_lint": {
"tag": "tlcpack/ci-lint:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-lint:20221013-060115-61c9742ea",
"platform": "CPU",
},
"ci_wasm": {
"tag": "tlcpack/ci-wasm:20251130-061900-c429a2b1",
"tag": "tlcpack/ci-wasm:20221013-060115-61c9742ea",
"platform": "CPU",
},
}
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

This revert is a good immediate fix. To address the underlying issue of duplicated image definitions that you mentioned in the PR description, you could refactor this to load the tags from ci/jenkins/docker-images.ini. This would make it the single source of truth and improve maintainability.

Here's a possible implementation for ci/jenkins/data.py:

import configparser
from pathlib import Path

# ... (other code)

# Docker Images
_DOCKER_IMAGE_PLATFORMS = {
    "ci_arm": "ARM",
    "ci_cpu": "CPU",
    "ci_gpu": "GPU",
    "ci_hexagon": "CPU",
    "ci_i386": "CPU",
    "ci_lint": "CPU",
    "ci_wasm": "CPU",
}

def _get_docker_images():
    # Assumes data.py and docker-images.ini are in the same directory
    docker_images_ini = Path(__file__).parent / "docker-images.ini"
    config = configparser.ConfigParser()
    config.read(docker_images_ini)
    
    docker_images = {}
    for name, platform in _DOCKER_IMAGE_PLATFORMS.items():
        tag = config.get("jenkins", name)
        docker_images[name] = {
            "tag": tag,
            "platform": platform,
        }
    return docker_images

docker_images = _get_docker_images()

This change would also require disabling or updating the open_docker_update_pr.py script to modify docker-images.ini instead of this file.

Note: There appears to be a typo in ci/jenkins/docker-images.ini where ci_cpu is listed as tlcpack/ci_cpu instead of tlcpack/ci-cpu.

@tqchen
Copy link
Member Author

tqchen commented Feb 7, 2026

cc @guan404ming @tlopex @yongwww . context, the data was used by docker/bash.sh command, but was not aligned with the ci behavior that uses https://github.com/apache/tvm/blob/main/ci/jenkins/docker-images.ini. We should temp disable it for now otherwise docker/bash.sh may no longer be consistet

@guan404ming
Copy link
Member

Thanks!

@tqchen
Copy link
Member Author

tqchen commented Feb 7, 2026

perhaps we should followup by either only allow manual update, or make things consistent ideally we should make sure https://github.com/apache/tvm/blob/main/ci/jenkins/docker-images.ini is source of truth

@tqchen tqchen closed this Feb 7, 2026
@tqchen
Copy link
Member Author

tqchen commented Feb 7, 2026

#18724 contains a PR to disable the PR. seems the current tag was not consistent but fine,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants