├── .github ├── renovate.json └── workflows │ ├── add_new_versions.yml │ ├── create-release.yml │ ├── renovate.yml │ └── workflow.yaml ├── .gitignore ├── CODEOWNERS ├── Dockerfile.dapper ├── Makefile ├── README.md ├── dist ├── 1.10.3.sh ├── 1.10.sh ├── 1.11.2.sh ├── 1.11.sh ├── 1.12.1.sh ├── 1.12.2.sh ├── 1.12.3.sh ├── 1.12.4.sh ├── 1.12.5.sh ├── 1.12.6.sh ├── 1.12.sh ├── 1.13.0.sh ├── 1.13.1.sh ├── 1.13.sh ├── 17.03.0.sh ├── 17.03.1.sh ├── 17.03.2.sh ├── 17.03.sh ├── 17.04.0.sh ├── 17.04.sh ├── 17.05.0.sh ├── 17.05.sh ├── 17.06.0.sh ├── 17.06.1.sh ├── 17.06.2.sh ├── 17.06.sh ├── 17.07.0.sh ├── 17.07.sh ├── 17.09.0.sh ├── 17.09.sh ├── 17.10.0.sh ├── 17.10.sh ├── 17.12.0.sh ├── 17.12.1.sh ├── 17.12.sh ├── 18.03.0.sh ├── 18.03.1.sh ├── 18.03.sh ├── 18.06.0.sh ├── 18.06.1.sh ├── 18.06.2.sh ├── 18.06.3.sh ├── 18.06.sh ├── 18.09.0.sh ├── 18.09.1.sh ├── 18.09.2.sh ├── 18.09.3.sh ├── 18.09.4.sh ├── 18.09.5.sh ├── 18.09.6.sh ├── 18.09.7.sh ├── 18.09.8.sh ├── 18.09.9.sh ├── 18.09.sh ├── 19.03.0.sh ├── 19.03.1.sh ├── 19.03.10.sh ├── 19.03.11.sh ├── 19.03.12.sh ├── 19.03.13.sh ├── 19.03.14.sh ├── 19.03.15.sh ├── 19.03.2.sh ├── 19.03.3.sh ├── 19.03.4.sh ├── 19.03.5.sh ├── 19.03.7.sh ├── 19.03.8.sh ├── 19.03.9.sh ├── 19.03.sh ├── 20.10.10.sh ├── 20.10.11.sh ├── 20.10.12.sh ├── 20.10.13.sh ├── 20.10.14.sh ├── 20.10.15.sh ├── 20.10.16.sh ├── 20.10.17.sh ├── 20.10.18.sh ├── 20.10.19.sh ├── 20.10.2.sh ├── 20.10.20.sh ├── 20.10.21.sh ├── 20.10.22.sh ├── 20.10.23.sh ├── 20.10.24.sh ├── 20.10.3.sh ├── 20.10.4.sh ├── 20.10.5.sh ├── 20.10.6.sh ├── 20.10.7.sh ├── 20.10.8.sh ├── 20.10.9.sh ├── 20.10.sh ├── 23.0.0.sh ├── 23.0.1.sh ├── 23.0.2.sh ├── 23.0.3.sh ├── 23.0.4.sh ├── 23.0.5.sh ├── 23.0.6.sh ├── 23.0.sh ├── 24.0.0.sh ├── 24.0.1.sh ├── 24.0.2.sh ├── 24.0.3.sh ├── 24.0.4.sh ├── 24.0.5.sh ├── 24.0.6.sh ├── 24.0.7.sh ├── 24.0.8.sh ├── 24.0.9.sh ├── 24.0.sh ├── 25.0.0.sh ├── 25.0.1.sh ├── 25.0.2.sh ├── 25.0.3.sh ├── 25.0.4.sh ├── 25.0.5.sh ├── 25.0.sh ├── 26.0.0.sh ├── 26.0.1.sh ├── 26.0.2.sh ├── 26.0.sh ├── 26.1.0.sh ├── 26.1.1.sh ├── 26.1.2.sh ├── 26.1.3.sh ├── 26.1.4.sh ├── 26.1.sh ├── 27.0.1.sh ├── 27.0.2.sh ├── 27.0.3.sh ├── 27.0.sh ├── 27.1.0.sh ├── 27.1.1.sh ├── 27.1.2.sh ├── 27.1.sh ├── 27.2.0.sh ├── 27.2.1.sh ├── 27.2.sh ├── 27.3.0.sh ├── 27.3.1.sh ├── 27.3.sh ├── 27.4.0.sh ├── 27.4.1.sh ├── 27.4.sh ├── 27.5.0.sh ├── 27.5.1.sh ├── 27.5.sh ├── 28.0.0.sh ├── 28.0.1.sh ├── 28.0.2.sh ├── 28.0.3.sh ├── 28.0.4.sh ├── 28.0.sh ├── 28.1.0.sh ├── 28.1.1.sh ├── 28.1.sh └── README.md ├── pkg ├── 20.10.24 │ ├── 20.10.24.diff │ └── config.sh ├── 23.0.0 │ ├── 23.0.0.diff │ └── config.sh ├── 23.0.1 │ ├── 23.0.1.diff │ └── config.sh ├── 23.0.2 │ ├── 23.0.2.diff │ └── config.sh ├── 23.0.3 │ ├── 23.0.3.diff │ └── config.sh ├── 23.0.4 │ ├── 23.0.4.diff │ └── config.sh ├── 23.0.5 │ ├── 23.0.5.diff │ └── config.sh ├── 23.0.6 │ ├── 23.0.6.diff │ └── config.sh ├── 24.0.0 │ ├── 24.0.0.diff │ └── config.sh ├── 24.0.1 │ ├── 24.0.1.diff │ └── config.sh ├── 24.0.2 │ ├── 24.0.2.diff │ └── config.sh ├── 24.0.3 │ ├── 24.0.3.diff │ └── config.sh ├── 24.0.4 │ ├── 24.0.4.diff │ └── config.sh ├── 24.0.5 │ ├── 24.0.5.diff │ └── config.sh ├── 24.0.6 │ ├── 24.0.6.diff │ └── config.sh ├── 24.0.7 │ ├── 24.0.7.diff │ └── config.sh ├── 24.0.8 │ ├── 24.0.8.diff │ └── config.sh ├── 24.0.9 │ ├── 24.0.9.diff │ └── config.sh ├── 25.0.0 │ ├── 25.0.0.diff │ └── config.sh ├── 25.0.1 │ ├── 25.0.1.diff │ └── config.sh ├── 25.0.2 │ ├── 25.0.2.diff │ └── config.sh ├── 25.0.3 │ ├── 25.0.3.diff │ └── config.sh ├── 25.0.4 │ ├── 25.0.4.diff │ └── config.sh ├── 25.0.5 │ ├── 25.0.5.diff │ └── config.sh ├── 26.0.0 │ ├── 26.0.0.diff │ └── config.sh ├── 26.0.1 │ ├── 26.0.1.diff │ └── config.sh ├── 26.0.2 │ ├── 26.0.2.diff │ └── config.sh ├── 26.1.0 │ ├── 26.1.0.diff │ └── config.sh ├── 26.1.1 │ ├── 26.1.1.diff │ └── config.sh ├── 26.1.2 │ ├── 26.1.2.diff │ └── config.sh ├── 26.1.3 │ ├── 26.1.3.diff │ └── config.sh ├── 26.1.4 │ ├── 26.1.4.diff │ └── config.sh ├── 27.0.1 │ ├── 27.0.1.diff │ └── config.sh ├── 27.0.2 │ ├── 27.0.2.diff │ └── config.sh ├── 27.0.3 │ ├── 27.0.3.diff │ └── config.sh ├── 27.1.0 │ ├── 27.1.0.diff │ └── config.sh ├── 27.1.1 │ ├── 27.1.1.diff │ └── config.sh ├── 27.1.2 │ ├── 27.1.2.diff │ └── config.sh ├── 27.2.0 │ ├── 27.2.0.diff │ └── config.sh ├── 27.2.1 │ ├── 27.2.1.diff │ └── config.sh ├── 27.3.0 │ ├── 27.3.0.diff │ ├── 27.3.0.sh.orig │ └── config.sh ├── 27.3.1 │ ├── 27.3.1.diff │ ├── 27.3.1.sh.orig │ └── config.sh ├── 27.4.0 │ ├── 27.4.0.diff │ ├── 27.4.0.sh.orig │ └── config.sh ├── 27.4.1 │ ├── 27.4.1.diff │ ├── 27.4.1.sh.orig │ └── config.sh ├── 27.5.0 │ ├── 27.5.0.diff │ ├── 27.5.0.sh.orig │ └── config.sh ├── 27.5.1 │ ├── 27.5.1.diff │ └── config.sh ├── 28.0.0 │ ├── 28.0.0.diff │ └── config.sh ├── 28.0.1 │ ├── 28.0.1.diff │ └── config.sh ├── 28.0.2 │ ├── 28.0.2.diff │ └── config.sh ├── 28.0.3 │ ├── 28.0.3.diff │ └── config.sh ├── 28.0.4 │ ├── 28.0.4.diff │ └── config.sh ├── 28.1.0 │ ├── 28.1.0.diff │ └── config.sh └── 28.1.1 │ ├── 28.1.1.diff │ └── config.sh ├── scripts ├── add-new-version ├── ci ├── entry ├── generate ├── generate-dist-files ├── generate-release-tag ├── sync ├── test ├── test-docker └── validate └── workflow_scripts ├── check-for-new-versions.py ├── gen-new-version-files.py └── requirements.txt /.github/renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "github>rancher/renovate-config#release" 4 | ], 5 | "baseBranches": [ 6 | "master" 7 | ], 8 | "prHourlyLimit": 2 9 | } 10 | -------------------------------------------------------------------------------- /.github/workflows/add_new_versions.yml: -------------------------------------------------------------------------------- 1 | name: Add New Docker Versions 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 0 * * 3" 7 | 8 | permissions: 9 | contents: write 10 | id-token: write 11 | pull-requests: write 12 | 13 | jobs: 14 | generate_and_raise_pr: 15 | runs-on: ubuntu-latest 16 | 17 | steps: 18 | - name: Read App Secrets 19 | uses: rancher-eio/read-vault-secrets@main 20 | with: 21 | secrets: | 22 | secret/data/github/repo/${{ github.repository }}/github/app-credentials appId | APP_ID ; 23 | secret/data/github/repo/${{ github.repository }}/github/app-credentials privateKey | PRIVATE_KEY 24 | 25 | - name: Create App Token 26 | uses: actions/create-github-app-token@v1 27 | id: app-token 28 | with: 29 | app-id: ${{ env.APP_ID }} 30 | private-key: ${{ env.PRIVATE_KEY }} 31 | 32 | - name: Checkout code 33 | uses: actions/checkout@v4 34 | with: 35 | token: ${{ steps.app-token.outputs.token }} 36 | 37 | - uses: actions/setup-python@v5 38 | with: 39 | python-version: '3.10' 40 | cache: 'pip' 41 | 42 | - name: Pip 43 | working-directory: ./workflow_scripts 44 | run: pip install -r requirements.txt 45 | 46 | - name: Check if new versions available 47 | id: check-versions 48 | run: | 49 | python -u workflow_scripts/check-for-new-versions.py 50 | env: 51 | EXCLUDED_VERSIONS: "v20.10.x,v23.0.x,v25.0.x,v26.1.x" 52 | 53 | - name: check if the PR exist 54 | if: ${{ env.PR_TITLE != '' }} 55 | env: 56 | GH_TOKEN: ${{ steps.app-token.outputs.token }} 57 | PR_TITLE: ${{env.PR_TITLE}} 58 | run: | 59 | EXISTING_PR=$(gh pr list --limit 1500 --json title,url | jq --arg title "${PR_TITLE}" -r '.[] | select(.title==$title) | .url') 60 | if [ -n "${EXISTING_PR}" ]; then 61 | echo "pr_exist=true" >> $GITHUB_ENV 62 | echo "Pull request already exists: ${EXISTING_PR}" >> $GITHUB_STEP_SUMMARY 63 | else 64 | echo "pr_exist=false" >> $GITHUB_ENV 65 | fi 66 | 67 | - name: generate files for new docker version 68 | if: ${{ env.pr_exist == 'false' && env.PR_TITLE != '' }} 69 | env: 70 | NEW_VERSIONS: ${{ env.NEW_VERSIONS }} 71 | run: | 72 | python -u workflow_scripts/gen-new-version-files.py 73 | 74 | - name: Create branch, commit and push 75 | if: ${{ env.pr_exist == 'false' && env.PR_TITLE != '' }} 76 | id: branch 77 | env: 78 | NEW_VERSIONS: ${{ env.NEW_VERSIONS }} 79 | run: | 80 | BRANCH="gha-add-tag-${GITHUB_RUN_ID}-${GITHUB_RUN_ATTEMPT}" 81 | echo "branch=${BRANCH}" >> $GITHUB_OUTPUT 82 | git config user.name github-actions 83 | git config user.email github-actions@github.com 84 | git checkout -b "$BRANCH" 85 | git add . 86 | git commit -m "added docker ${NEW_VERSIONS}" 87 | git push origin "$BRANCH" 88 | 89 | - name: Create Pull Request 90 | if: ${{ env.pr_exist == 'false' && env.PR_TITLE != '' }} 91 | id: cpr 92 | env: 93 | SOURCE_BRANCH: ${{ steps.branch.outputs.branch }} 94 | GH_TOKEN: ${{ steps.app-token.outputs.token }} 95 | PR_TITLE: ${{env.PR_TITLE}} 96 | PR_BODY: autogenerated PR to add docker ${{env.NEW_VERSIONS}} 97 | run: | 98 | PR_TITLE=$(echo "$PR_TITLE" | cut -c -256) 99 | CREATED_PR=$(gh pr create --title "${PR_TITLE}" --body "${PR_BODY}" --label "status/auto-created" --base "${GITHUB_REF_NAME}" --head "${SOURCE_BRANCH}") 100 | echo "Created pull request: ${CREATED_PR}" >> $GITHUB_STEP_SUMMARY 101 | -------------------------------------------------------------------------------- /.github/workflows/create-release.yml: -------------------------------------------------------------------------------- 1 | name: Creates a tag and upload release 2 | on: workflow_dispatch 3 | 4 | jobs: 5 | validate: 6 | permissions: 7 | contents: read 8 | runs-on: ubuntu-latest 9 | timeout-minutes: 10 10 | container: 11 | image: rancher/dapper:v0.6.0 12 | steps: 13 | - name: Checkout code 14 | uses: actions/checkout@v4 15 | - name: Validate 16 | run: dapper validate 17 | 18 | tag: 19 | permissions: 20 | contents: write 21 | needs: validate 22 | runs-on: ubuntu-latest 23 | outputs: 24 | generated-tag: ${{ steps.generate_tag.outputs.generated-tag }} 25 | steps: 26 | - name: Check out repository code 27 | uses: actions/checkout@v4 28 | - name: Run tests 29 | id: generate_tag 30 | run: | 31 | tag=$(bash scripts/generate-release-tag) 32 | echo "generated-tag=$tag" >> $GITHUB_OUTPUT 33 | - uses: actions/github-script@v7.0.1 34 | with: 35 | github-token: ${{ secrets.GITHUB_TOKEN }} 36 | script: | 37 | const tag = '${{ steps.generate_tag.outputs.generated-tag }}' 38 | 39 | const branch = '${{ github.ref_name }}' 40 | 41 | try { 42 | const resp = await github.rest.git.getRef({...context.repo, ref: `tags/${tag}`}); 43 | return core.setFailed(`the tag ${tag} already exists on ${resp.data.object.type} ${resp.data.object.sha}`); 44 | } catch(err) { 45 | if(err.status !== 404){ 46 | throw err; 47 | } 48 | } 49 | 50 | github.rest.git.createRef({ 51 | owner: context.repo.owner, 52 | repo: context.repo.repo, 53 | ref: `refs/tags/${tag}`, 54 | sha: context.sha 55 | }) 56 | 57 | upload: 58 | permissions: 59 | contents: read 60 | id-token: write 61 | needs: [validate,tag] 62 | runs-on: ubuntu-latest 63 | timeout-minutes: 10 64 | steps: 65 | - name: Checkout code 66 | uses: actions/checkout@v4 67 | - name: Add tag to version file 68 | run: | 69 | echo "{\"version\": \"${{ needs.tag.outputs.generated-tag }}\"}" > dist/VERSION 70 | - name: Retrieve Google auth from vault 71 | uses: rancher-eio/read-vault-secrets@main 72 | with: 73 | secrets: | 74 | secret/data/github/repo/${{ github.repository }}/google-auth/rancher/credentials token | GOOGLE_AUTH 75 | - name: Authenticate with Google Cloud 76 | uses: 'google-github-actions/auth@v2' 77 | with: 78 | credentials_json: '${{ env.GOOGLE_AUTH }}' 79 | - name: Upload to Google Cloud Storage 80 | uses: google-github-actions/upload-cloud-storage@v2 81 | with: 82 | path: dist/ 83 | destination: releases.rancher.com/install-docker 84 | parent: false 85 | predefinedAcl: publicRead 86 | headers: |- 87 | cache-control: public,no-cache,proxy-revalidate 88 | -------------------------------------------------------------------------------- /.github/workflows/renovate.yml: -------------------------------------------------------------------------------- 1 | name: Renovate 2 | on: 3 | workflow_dispatch: 4 | inputs: 5 | logLevel: 6 | description: "Override default log level" 7 | required: false 8 | default: "info" 9 | type: string 10 | overrideSchedule: 11 | description: "Override all schedules" 12 | required: false 13 | default: "false" 14 | type: string 15 | # Run twice in the early morning (UTC) for initial and follow up steps (create pull request and merge) 16 | schedule: 17 | - cron: '30 4,6 * * *' 18 | 19 | jobs: 20 | call-workflow: 21 | uses: rancher/renovate-config/.github/workflows/renovate.yml@release 22 | with: 23 | logLevel: ${{ inputs.logLevel || 'info' }} 24 | overrideSchedule: ${{ github.event.inputs.overrideSchedule == 'true' && '{''schedule'':null}' || '' }} 25 | secrets: inherit 26 | -------------------------------------------------------------------------------- /.github/workflows/workflow.yaml: -------------------------------------------------------------------------------- 1 | name: Workflow for install-docker 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | pull_request: 8 | branches: 9 | - master 10 | 11 | jobs: 12 | validate: 13 | permissions: 14 | contents: read 15 | runs-on: ubuntu-latest 16 | timeout-minutes: 10 17 | container: 18 | image: rancher/dapper:v0.6.0 19 | steps: 20 | - name: Checkout code 21 | uses: actions/checkout@v4 22 | - name: Validate 23 | run: dapper validate 24 | 25 | test: 26 | permissions: 27 | contents: read 28 | needs: validate 29 | runs-on: ubuntu-latest 30 | timeout-minutes: 120 31 | if: github.event_name == 'pull_request' 32 | container: 33 | image: rancher/dapper:v0.6.0 34 | steps: 35 | - name: Checkout code 36 | uses: actions/checkout@v4 37 | - name: Test 38 | run: dapper test 39 | 40 | upload-dev: 41 | permissions: 42 | contents: read 43 | id-token: write 44 | needs: validate 45 | runs-on: ubuntu-latest 46 | timeout-minutes: 10 47 | if: github.event_name == 'push' && github.ref == 'refs/heads/master' 48 | steps: 49 | - name: Checkout code 50 | uses: actions/checkout@v4 51 | - name: Add commit to version file 52 | run: | 53 | echo "{\"version\": \"${{ github.sha }}\"}" > dist/VERSION 54 | - name: Retrieve Google auth from vault 55 | uses: rancher-eio/read-vault-secrets@main 56 | with: 57 | secrets: | 58 | secret/data/github/repo/${{ github.repository }}/google-auth/rancher/credentials token | GOOGLE_AUTH 59 | - name: Authenticate with Google Cloud 60 | uses: 'google-github-actions/auth@v2' 61 | with: 62 | credentials_json: '${{ env.GOOGLE_AUTH }}' 63 | - name: Upload to Google Cloud Storage 64 | uses: google-github-actions/upload-cloud-storage@v2 65 | with: 66 | path: dist/ 67 | destination: releases.rancher.com/install-docker-dev 68 | parent: false 69 | predefinedAcl: publicRead 70 | headers: |- 71 | cache-control: public,no-cache,proxy-revalidate -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.dapper 2 | /.cache 3 | /bin 4 | *.swp 5 | .idea 6 | # Ignore generated credentials from google-github-actions/auth 7 | gha-creds-*.json -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @rancher/rancher-team-2-hostbusters-dev 2 | -------------------------------------------------------------------------------- /Dockerfile.dapper: -------------------------------------------------------------------------------- 1 | FROM docker:20.10.6-dind 2 | 3 | RUN apk -U add wget curl bash git make gettext patch diffutils 4 | 5 | ARG DAPPER_HOST_ARCH 6 | ENV HOST_ARCH=${DAPPER_HOST_ARCH} ARCH=${DAPPER_HOST_ARCH} 7 | 8 | ENV DAPPER_SOURCE /install-docker 9 | ENV DAPPER_RUN_ARGS --privileged 10 | ENV DAPPER_OUTPUT ./dist ./pkg 11 | ENV DAPPER_ENV TAG REPO GOOS CROSS DRONE_TAG VERSION_FILTER ADD_DOCKER_VERSION PREVIOUS_ADD_DOCKER_VERSION 12 | ENV TRASH_CACHE ${DAPPER_SOURCE}/.trash-cache 13 | ENV HOME ${DAPPER_SOURCE} 14 | WORKDIR ${DAPPER_SOURCE} 15 | 16 | ENTRYPOINT ["./scripts/entry"] 17 | CMD ["ci"] 18 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | TARGETS := $(shell ls scripts) 2 | 3 | .dapper: 4 | @echo Downloading dapper 5 | @curl -sL https://releases.rancher.com/dapper/latest/dapper-`uname -s`-`uname -m` > .dapper.tmp 6 | @@chmod +x .dapper.tmp 7 | @./.dapper.tmp -v 8 | @mv .dapper.tmp .dapper 9 | 10 | $(TARGETS): .dapper 11 | ./.dapper $@ 12 | 13 | .DEFAULT_GOAL := ci 14 | 15 | .PHONY: $(TARGETS) 16 | 17 | -------------------------------------------------------------------------------- /dist/1.10.sh: -------------------------------------------------------------------------------- 1 | 1.10.3.sh -------------------------------------------------------------------------------- /dist/1.11.sh: -------------------------------------------------------------------------------- 1 | 1.11.2.sh -------------------------------------------------------------------------------- /dist/1.12.sh: -------------------------------------------------------------------------------- 1 | 1.12.6.sh -------------------------------------------------------------------------------- /dist/1.13.sh: -------------------------------------------------------------------------------- 1 | 1.13.1.sh -------------------------------------------------------------------------------- /dist/17.03.sh: -------------------------------------------------------------------------------- 1 | 17.03.2.sh -------------------------------------------------------------------------------- /dist/17.04.sh: -------------------------------------------------------------------------------- 1 | 17.04.0.sh -------------------------------------------------------------------------------- /dist/17.05.sh: -------------------------------------------------------------------------------- 1 | 17.05.0.sh -------------------------------------------------------------------------------- /dist/17.06.sh: -------------------------------------------------------------------------------- 1 | 17.06.2.sh -------------------------------------------------------------------------------- /dist/17.07.sh: -------------------------------------------------------------------------------- 1 | 17.07.0.sh -------------------------------------------------------------------------------- /dist/17.09.sh: -------------------------------------------------------------------------------- 1 | 17.09.0.sh -------------------------------------------------------------------------------- /dist/17.10.sh: -------------------------------------------------------------------------------- 1 | 17.10.0.sh -------------------------------------------------------------------------------- /dist/17.12.sh: -------------------------------------------------------------------------------- 1 | 17.12.1.sh -------------------------------------------------------------------------------- /dist/18.03.sh: -------------------------------------------------------------------------------- 1 | 18.03.1.sh -------------------------------------------------------------------------------- /dist/18.06.sh: -------------------------------------------------------------------------------- 1 | 18.06.3.sh -------------------------------------------------------------------------------- /dist/18.09.sh: -------------------------------------------------------------------------------- 1 | 18.09.9.sh -------------------------------------------------------------------------------- /dist/19.03.sh: -------------------------------------------------------------------------------- 1 | 19.03.15.sh -------------------------------------------------------------------------------- /dist/20.10.sh: -------------------------------------------------------------------------------- 1 | 20.10.24.sh -------------------------------------------------------------------------------- /dist/23.0.sh: -------------------------------------------------------------------------------- 1 | 23.0.6.sh -------------------------------------------------------------------------------- /dist/24.0.sh: -------------------------------------------------------------------------------- 1 | 24.0.9.sh -------------------------------------------------------------------------------- /dist/25.0.sh: -------------------------------------------------------------------------------- 1 | 25.0.5.sh -------------------------------------------------------------------------------- /dist/26.0.sh: -------------------------------------------------------------------------------- 1 | 26.0.2.sh -------------------------------------------------------------------------------- /dist/26.1.sh: -------------------------------------------------------------------------------- 1 | 26.1.4.sh -------------------------------------------------------------------------------- /dist/27.0.sh: -------------------------------------------------------------------------------- 1 | 27.0.3.sh -------------------------------------------------------------------------------- /dist/27.1.sh: -------------------------------------------------------------------------------- 1 | 27.1.2.sh -------------------------------------------------------------------------------- /dist/27.2.sh: -------------------------------------------------------------------------------- 1 | 27.2.1.sh -------------------------------------------------------------------------------- /dist/27.3.sh: -------------------------------------------------------------------------------- 1 | 27.3.1.sh -------------------------------------------------------------------------------- /dist/27.4.sh: -------------------------------------------------------------------------------- 1 | 27.4.1.sh -------------------------------------------------------------------------------- /dist/27.5.sh: -------------------------------------------------------------------------------- 1 | 27.5.1.sh -------------------------------------------------------------------------------- /dist/28.0.sh: -------------------------------------------------------------------------------- 1 | 28.0.4.sh -------------------------------------------------------------------------------- /dist/28.1.sh: -------------------------------------------------------------------------------- 1 | 28.1.1.sh -------------------------------------------------------------------------------- /dist/README.md: -------------------------------------------------------------------------------- 1 | ../README.md -------------------------------------------------------------------------------- /pkg/20.10.24/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="a8a6b338bdfedd7ddefb96fe3e7fe7d4036d945a" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="66474034547a96caa0a25be56051ff8b726a1b28" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="66474034547a96caa0a25be56051ff8b726a1b28" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="93bb55b16a5f5c8ce33e0f4784cb8af149d9590f" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="a8a6b338bdfedd7ddefb96fe3e7fe7d4036d945a" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.4/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="a8a6b338bdfedd7ddefb96fe3e7fe7d4036d945a" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.5/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="a8a6b338bdfedd7ddefb96fe3e7fe7d4036d945a" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/23.0.6/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="a8a6b338bdfedd7ddefb96fe3e7fe7d4036d945a" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.0/24.0.0.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.0.orig.sh 2023-07-12 16:53:19.044755524 +0530 2 | +++ 24.0.0.sh 2023-07-12 16:54:55.999311370 +0530 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (unmaintained) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,18 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | command_exists() { 76 | command -v "$@" > /dev/null 2>&1 77 | } 78 | @@ -450,10 +468,17 @@ 79 | esac 80 | ;; 81 | 82 | - centos|rhel|sles) 83 | + centos|rhel|sles|rocky) 84 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 85 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 86 | fi 87 | + 88 | + ;; 89 | + 90 | + oracleserver|ol) 91 | + lsb_dist="ol" 92 | + # need to switch lsb_dist to match yum repo URL 93 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 94 | ;; 95 | 96 | *) 97 | @@ -553,15 +578,12 @@ 98 | set -x 99 | fi 100 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 101 | + start_docker 102 | ) 103 | echo_docker_as_nonroot 104 | exit 0 105 | ;; 106 | - centos|fedora|rhel) 107 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 108 | - echo "Packages for RHEL are currently only available for s390x." 109 | - exit 1 110 | - fi 111 | + centos|fedora|rhel|ol|rocky) 112 | if [ "$lsb_dist" = "fedora" ]; then 113 | pkg_manager="dnf" 114 | config_manager="dnf config-manager" 115 | @@ -578,6 +600,9 @@ 116 | pkg_suffix="el" 117 | fi 118 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 119 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 120 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 121 | + fi 122 | ( 123 | if ! is_dry_run; then 124 | set -x 125 | @@ -589,6 +614,25 @@ 126 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 127 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 128 | fi 129 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 130 | + adjust_repo_releasever "$dist_version" 131 | + # Add extra repo for version 7.x 132 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 133 | + if [ "$lsb_dist" = "rhel" ]; then 134 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 135 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 136 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 137 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 139 | + else 140 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 141 | + # Adding OL7 developer repo if doesn't exist 142 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 143 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 144 | + fi 145 | + fi 146 | + fi 147 | + fi 148 | $sh_c "$pkg_manager makecache" 149 | ) 150 | pkg_version="" 151 | @@ -648,8 +692,7 @@ 152 | if [ "$dist_version" = "15.3" ]; then 153 | sles_version="SLE_15_SP3" 154 | else 155 | - sles_minor_version="${dist_version##*.}" 156 | - sles_version="15.$sles_minor_version" 157 | + sles_version="SLE_15_SP2" 158 | fi 159 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 160 | pre_reqs="ca-certificates curl libseccomp2 awk" 161 | @@ -715,10 +758,25 @@ 162 | set -x 163 | fi 164 | $sh_c "zypper -q install -y $pkgs" 165 | + if ! command_exists iptables; then 166 | + $sh_c "$pkg_manager install -y -q iptables" 167 | + fi 168 | + start_docker 169 | ) 170 | echo_docker_as_nonroot 171 | exit 0 172 | ;; 173 | + rancheros) 174 | + ( 175 | + set -x 176 | + $sh_c "sleep 3;ros engine list --update" 177 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 178 | + if [ "$engine_version" != "" ]; then 179 | + $sh_c "ros engine switch -f $engine_version" 180 | + fi 181 | + ) 182 | + exit 0 183 | + ;; 184 | *) 185 | if [ -z "$lsb_dist" ]; then 186 | if is_darwin; then 187 | -------------------------------------------------------------------------------- /pkg/24.0.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.1/24.0.1.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.1.orig.sh 2023-07-12 11:26:11.154740642 +0000 2 | +++ 24.0.1.sh 2023-07-12 11:26:11.161740681 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (unmaintained) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,18 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | command_exists() { 76 | command -v "$@" > /dev/null 2>&1 77 | } 78 | @@ -450,10 +468,17 @@ 79 | esac 80 | ;; 81 | 82 | - centos|rhel|sles) 83 | + centos|rhel|sles|rocky) 84 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 85 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 86 | fi 87 | + 88 | + ;; 89 | + 90 | + oracleserver|ol) 91 | + lsb_dist="ol" 92 | + # need to switch lsb_dist to match yum repo URL 93 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 94 | ;; 95 | 96 | *) 97 | @@ -553,15 +578,12 @@ 98 | set -x 99 | fi 100 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 101 | + start_docker 102 | ) 103 | echo_docker_as_nonroot 104 | exit 0 105 | ;; 106 | - centos|fedora|rhel) 107 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 108 | - echo "Packages for RHEL are currently only available for s390x." 109 | - exit 1 110 | - fi 111 | + centos|fedora|rhel|ol|rocky) 112 | if [ "$lsb_dist" = "fedora" ]; then 113 | pkg_manager="dnf" 114 | config_manager="dnf config-manager" 115 | @@ -578,6 +600,9 @@ 116 | pkg_suffix="el" 117 | fi 118 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 119 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 120 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 121 | + fi 122 | ( 123 | if ! is_dry_run; then 124 | set -x 125 | @@ -589,6 +614,25 @@ 126 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 127 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 128 | fi 129 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 130 | + adjust_repo_releasever "$dist_version" 131 | + # Add extra repo for version 7.x 132 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 133 | + if [ "$lsb_dist" = "rhel" ]; then 134 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 135 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 136 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 137 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 139 | + else 140 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 141 | + # Adding OL7 developer repo if doesn't exist 142 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 143 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 144 | + fi 145 | + fi 146 | + fi 147 | + fi 148 | $sh_c "$pkg_manager makecache" 149 | ) 150 | pkg_version="" 151 | @@ -648,8 +692,7 @@ 152 | if [ "$dist_version" = "15.3" ]; then 153 | sles_version="SLE_15_SP3" 154 | else 155 | - sles_minor_version="${dist_version##*.}" 156 | - sles_version="15.$sles_minor_version" 157 | + sles_version="SLE_15_SP2" 158 | fi 159 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 160 | pre_reqs="ca-certificates curl libseccomp2 awk" 161 | @@ -715,10 +758,25 @@ 162 | set -x 163 | fi 164 | $sh_c "zypper -q install -y $pkgs" 165 | + if ! command_exists iptables; then 166 | + $sh_c "$pkg_manager install -y -q iptables" 167 | + fi 168 | + start_docker 169 | ) 170 | echo_docker_as_nonroot 171 | exit 0 172 | ;; 173 | + rancheros) 174 | + ( 175 | + set -x 176 | + $sh_c "sleep 3;ros engine list --update" 177 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 178 | + if [ "$engine_version" != "" ]; then 179 | + $sh_c "ros engine switch -f $engine_version" 180 | + fi 181 | + ) 182 | + exit 0 183 | + ;; 184 | *) 185 | if [ -z "$lsb_dist" ]; then 186 | if is_darwin; then 187 | -------------------------------------------------------------------------------- /pkg/24.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.2/24.0.2.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.2.orig.sh 2023-07-12 11:26:18.316781550 +0000 2 | +++ 24.0.2.sh 2023-07-12 11:26:18.324781595 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.2" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (unmaintained) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,18 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | command_exists() { 76 | command -v "$@" > /dev/null 2>&1 77 | } 78 | @@ -450,10 +468,17 @@ 79 | esac 80 | ;; 81 | 82 | - centos|rhel|sles) 83 | + centos|rhel|sles|rocky) 84 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 85 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 86 | fi 87 | + 88 | + ;; 89 | + 90 | + oracleserver|ol) 91 | + lsb_dist="ol" 92 | + # need to switch lsb_dist to match yum repo URL 93 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 94 | ;; 95 | 96 | *) 97 | @@ -553,15 +578,12 @@ 98 | set -x 99 | fi 100 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 101 | + start_docker 102 | ) 103 | echo_docker_as_nonroot 104 | exit 0 105 | ;; 106 | - centos|fedora|rhel) 107 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 108 | - echo "Packages for RHEL are currently only available for s390x." 109 | - exit 1 110 | - fi 111 | + centos|fedora|rhel|ol|rocky) 112 | if [ "$lsb_dist" = "fedora" ]; then 113 | pkg_manager="dnf" 114 | config_manager="dnf config-manager" 115 | @@ -578,6 +600,9 @@ 116 | pkg_suffix="el" 117 | fi 118 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 119 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 120 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 121 | + fi 122 | ( 123 | if ! is_dry_run; then 124 | set -x 125 | @@ -589,6 +614,25 @@ 126 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 127 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 128 | fi 129 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 130 | + adjust_repo_releasever "$dist_version" 131 | + # Add extra repo for version 7.x 132 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 133 | + if [ "$lsb_dist" = "rhel" ]; then 134 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 135 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 136 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 137 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 139 | + else 140 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 141 | + # Adding OL7 developer repo if doesn't exist 142 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 143 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 144 | + fi 145 | + fi 146 | + fi 147 | + fi 148 | $sh_c "$pkg_manager makecache" 149 | ) 150 | pkg_version="" 151 | @@ -648,8 +692,7 @@ 152 | if [ "$dist_version" = "15.3" ]; then 153 | sles_version="SLE_15_SP3" 154 | else 155 | - sles_minor_version="${dist_version##*.}" 156 | - sles_version="15.$sles_minor_version" 157 | + sles_version="SLE_15_SP2" 158 | fi 159 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 160 | pre_reqs="ca-certificates curl libseccomp2 awk" 161 | @@ -715,10 +758,25 @@ 162 | set -x 163 | fi 164 | $sh_c "zypper -q install -y $pkgs" 165 | + if ! command_exists iptables; then 166 | + $sh_c "$pkg_manager install -y -q iptables" 167 | + fi 168 | + start_docker 169 | ) 170 | echo_docker_as_nonroot 171 | exit 0 172 | ;; 173 | + rancheros) 174 | + ( 175 | + set -x 176 | + $sh_c "sleep 3;ros engine list --update" 177 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 178 | + if [ "$engine_version" != "" ]; then 179 | + $sh_c "ros engine switch -f $engine_version" 180 | + fi 181 | + ) 182 | + exit 0 183 | + ;; 184 | *) 185 | if [ -z "$lsb_dist" ]; then 186 | if is_darwin; then 187 | -------------------------------------------------------------------------------- /pkg/24.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="c2de0811708b6d9015ed1a2c80f02c9b70c8ce7b" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.3/24.0.3.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.3.orig.sh 2023-11-06 14:58:27.147067285 +0530 2 | +++ 24.0.3.sh 2023-11-06 16:34:19.428306208 +0530 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="e5543d473431b782227f8908005543bb4389b8de" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.3" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,18 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel|sles) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + 90 | + ;; 91 | + 92 | + oracleserver|ol) 93 | + lsb_dist="ol" 94 | + # need to switch lsb_dist to match yum repo URL 95 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 96 | ;; 97 | 98 | *) 99 | @@ -553,15 +580,12 @@ 100 | set -x 101 | fi 102 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 103 | + start_docker 104 | ) 105 | echo_docker_as_nonroot 106 | exit 0 107 | ;; 108 | - centos|fedora|rhel) 109 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 110 | - echo "Packages for RHEL are currently only available for s390x." 111 | - exit 1 112 | - fi 113 | + centos|fedora|rhel|ol|rocky) 114 | if [ "$lsb_dist" = "fedora" ]; then 115 | pkg_manager="dnf" 116 | config_manager="dnf config-manager" 117 | @@ -578,6 +602,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -589,6 +616,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -648,8 +694,7 @@ 154 | if [ "$dist_version" = "15.3" ]; then 155 | sles_version="SLE_15_SP3" 156 | else 157 | - sles_minor_version="${dist_version##*.}" 158 | - sles_version="15.$sles_minor_version" 159 | + sles_version="SLE_15_SP2" 160 | fi 161 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 162 | pre_reqs="ca-certificates curl libseccomp2 awk" 163 | @@ -715,10 +760,25 @@ 164 | set -x 165 | fi 166 | $sh_c "zypper -q install -y $pkgs" 167 | + if ! command_exists iptables; then 168 | + $sh_c "$pkg_manager install -y -q iptables" 169 | + fi 170 | + start_docker 171 | ) 172 | echo_docker_as_nonroot 173 | exit 0 174 | ;; 175 | + rancheros) 176 | + ( 177 | + set -x 178 | + $sh_c "sleep 3;ros engine list --update" 179 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 180 | + if [ "$engine_version" != "" ]; then 181 | + $sh_c "ros engine switch -f $engine_version" 182 | + fi 183 | + ) 184 | + exit 0 185 | + ;; 186 | *) 187 | if [ -z "$lsb_dist" ]; then 188 | if is_darwin; then 189 | -------------------------------------------------------------------------------- /pkg/24.0.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.4/24.0.4.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.4.orig.sh 2023-11-06 11:27:43.056626954 +0000 2 | +++ 24.0.4.sh 2023-11-06 11:27:43.060627183 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="e5543d473431b782227f8908005543bb4389b8de" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.4" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,18 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel|sles) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + 90 | + ;; 91 | + 92 | + oracleserver|ol) 93 | + lsb_dist="ol" 94 | + # need to switch lsb_dist to match yum repo URL 95 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 96 | ;; 97 | 98 | *) 99 | @@ -553,15 +580,12 @@ 100 | set -x 101 | fi 102 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 103 | + start_docker 104 | ) 105 | echo_docker_as_nonroot 106 | exit 0 107 | ;; 108 | - centos|fedora|rhel) 109 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 110 | - echo "Packages for RHEL are currently only available for s390x." 111 | - exit 1 112 | - fi 113 | + centos|fedora|rhel|ol|rocky) 114 | if [ "$lsb_dist" = "fedora" ]; then 115 | pkg_manager="dnf" 116 | config_manager="dnf config-manager" 117 | @@ -578,6 +602,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -589,6 +616,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -648,8 +694,7 @@ 154 | if [ "$dist_version" = "15.3" ]; then 155 | sles_version="SLE_15_SP3" 156 | else 157 | - sles_minor_version="${dist_version##*.}" 158 | - sles_version="15.$sles_minor_version" 159 | + sles_version="SLE_15_SP2" 160 | fi 161 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 162 | pre_reqs="ca-certificates curl libseccomp2 awk" 163 | @@ -715,10 +760,25 @@ 164 | set -x 165 | fi 166 | $sh_c "zypper -q install -y $pkgs" 167 | + if ! command_exists iptables; then 168 | + $sh_c "$pkg_manager install -y -q iptables" 169 | + fi 170 | + start_docker 171 | ) 172 | echo_docker_as_nonroot 173 | exit 0 174 | ;; 175 | + rancheros) 176 | + ( 177 | + set -x 178 | + $sh_c "sleep 3;ros engine list --update" 179 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 180 | + if [ "$engine_version" != "" ]; then 181 | + $sh_c "ros engine switch -f $engine_version" 182 | + fi 183 | + ) 184 | + exit 0 185 | + ;; 186 | *) 187 | if [ -z "$lsb_dist" ]; then 188 | if is_darwin; then 189 | -------------------------------------------------------------------------------- /pkg/24.0.4/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.5/24.0.5.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.5.orig.sh 2023-11-06 11:43:24.003439720 +0000 2 | +++ 24.0.5.sh 2023-11-06 11:43:24.019440239 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="e5543d473431b782227f8908005543bb4389b8de" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.5" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,18 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel|sles) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + 90 | + ;; 91 | + 92 | + oracleserver|ol) 93 | + lsb_dist="ol" 94 | + # need to switch lsb_dist to match yum repo URL 95 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 96 | ;; 97 | 98 | *) 99 | @@ -553,15 +580,12 @@ 100 | set -x 101 | fi 102 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 103 | + start_docker 104 | ) 105 | echo_docker_as_nonroot 106 | exit 0 107 | ;; 108 | - centos|fedora|rhel) 109 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 110 | - echo "Packages for RHEL are currently only available for s390x." 111 | - exit 1 112 | - fi 113 | + centos|fedora|rhel|ol|rocky) 114 | if [ "$lsb_dist" = "fedora" ]; then 115 | pkg_manager="dnf" 116 | config_manager="dnf config-manager" 117 | @@ -578,6 +602,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -589,6 +616,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -648,8 +694,7 @@ 154 | if [ "$dist_version" = "15.3" ]; then 155 | sles_version="SLE_15_SP3" 156 | else 157 | - sles_minor_version="${dist_version##*.}" 158 | - sles_version="15.$sles_minor_version" 159 | + sles_version="SLE_15_SP2" 160 | fi 161 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 162 | pre_reqs="ca-certificates curl libseccomp2 awk" 163 | @@ -715,10 +760,25 @@ 164 | set -x 165 | fi 166 | $sh_c "zypper -q install -y $pkgs" 167 | + if ! command_exists iptables; then 168 | + $sh_c "$pkg_manager install -y -q iptables" 169 | + fi 170 | + start_docker 171 | ) 172 | echo_docker_as_nonroot 173 | exit 0 174 | ;; 175 | + rancheros) 176 | + ( 177 | + set -x 178 | + $sh_c "sleep 3;ros engine list --update" 179 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 180 | + if [ "$engine_version" != "" ]; then 181 | + $sh_c "ros engine switch -f $engine_version" 182 | + fi 183 | + ) 184 | + exit 0 185 | + ;; 186 | *) 187 | if [ -z "$lsb_dist" ]; then 188 | if is_darwin; then 189 | -------------------------------------------------------------------------------- /pkg/24.0.5/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.6/24.0.6.diff: -------------------------------------------------------------------------------- 1 | --- 24.0.6.orig.sh 2023-11-06 11:50:40.799619651 +0000 2 | +++ 24.0.6.sh 2023-11-06 11:50:40.815618732 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="e5543d473431b782227f8908005543bb4389b8de" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="24.0.6" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,18 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel|sles) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + 90 | + ;; 91 | + 92 | + oracleserver|ol) 93 | + lsb_dist="ol" 94 | + # need to switch lsb_dist to match yum repo URL 95 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 96 | ;; 97 | 98 | *) 99 | @@ -553,15 +580,12 @@ 100 | set -x 101 | fi 102 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 103 | + start_docker 104 | ) 105 | echo_docker_as_nonroot 106 | exit 0 107 | ;; 108 | - centos|fedora|rhel) 109 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 110 | - echo "Packages for RHEL are currently only available for s390x." 111 | - exit 1 112 | - fi 113 | + centos|fedora|rhel|ol|rocky) 114 | if [ "$lsb_dist" = "fedora" ]; then 115 | pkg_manager="dnf" 116 | config_manager="dnf config-manager" 117 | @@ -578,6 +602,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -589,6 +616,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -648,8 +694,7 @@ 154 | if [ "$dist_version" = "15.3" ]; then 155 | sles_version="SLE_15_SP3" 156 | else 157 | - sles_minor_version="${dist_version##*.}" 158 | - sles_version="15.$sles_minor_version" 159 | + sles_version="SLE_15_SP2" 160 | fi 161 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 162 | pre_reqs="ca-certificates curl libseccomp2 awk" 163 | @@ -715,10 +760,25 @@ 164 | set -x 165 | fi 166 | $sh_c "zypper -q install -y $pkgs" 167 | + if ! command_exists iptables; then 168 | + $sh_c "$pkg_manager install -y -q iptables" 169 | + fi 170 | + start_docker 171 | ) 172 | echo_docker_as_nonroot 173 | exit 0 174 | ;; 175 | + rancheros) 176 | + ( 177 | + set -x 178 | + $sh_c "sleep 3;ros engine list --update" 179 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 180 | + if [ "$engine_version" != "" ]; then 181 | + $sh_c "ros engine switch -f $engine_version" 182 | + fi 183 | + ) 184 | + exit 0 185 | + ;; 186 | *) 187 | if [ -z "$lsb_dist" ]; then 188 | if is_darwin; then 189 | -------------------------------------------------------------------------------- /pkg/24.0.6/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.7/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.8/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/24.0.9/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.4/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/25.0.5/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.0.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.1.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.1.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="e5543d473431b782227f8908005543bb4389b8de" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.1.2/26.1.2.diff: -------------------------------------------------------------------------------- 1 | --- 26.1.2.orig.sh 2024-05-16 18:07:07.534969099 +0530 2 | +++ 26.1.2.sh 2024-05-16 18:48:28.655522502 +0530 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="6d9743e9656cc56f699a64800b098d5ea5a60020" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="26.1.2" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,17 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + ;; 90 | + 91 | + oracleserver|ol) 92 | + lsb_dist="ol" 93 | + # need to switch lsb_dist to match yum repo URL 94 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 95 | ;; 96 | 97 | *) 98 | @@ -550,16 +576,12 @@ 99 | set -x 100 | fi 101 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 102 | + start_docker 103 | ) 104 | echo_docker_as_nonroot 105 | exit 0 106 | ;; 107 | - centos|fedora|rhel) 108 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 109 | - echo "Packages for RHEL are currently only available for s390x." 110 | - exit 1 111 | - fi 112 | - 113 | + centos|fedora|rhel|ol|rocky) 114 | if command_exists dnf; then 115 | pkg_manager="dnf" 116 | pkg_manager_flags="--best" 117 | @@ -582,6 +604,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -593,6 +618,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -649,6 +693,11 @@ 154 | echo "Packages for SLES are currently only available for s390x" 155 | exit 1 156 | fi 157 | + if [ "$dist_version" = "15.3" ]; then 158 | + sles_version="SLE_15_SP3" 159 | + else 160 | + sles_version="SLE_15_SP2" 161 | + fi 162 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 163 | pre_reqs="ca-certificates curl libseccomp2 awk" 164 | ( 165 | @@ -713,10 +762,25 @@ 166 | set -x 167 | fi 168 | $sh_c "zypper -q install -y $pkgs" 169 | + if ! command_exists iptables; then 170 | + $sh_c "$pkg_manager install -y -q iptables" 171 | + fi 172 | + start_docker 173 | ) 174 | echo_docker_as_nonroot 175 | exit 0 176 | ;; 177 | + rancheros) 178 | + ( 179 | + set -x 180 | + $sh_c "sleep 3;ros engine list --update" 181 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 182 | + if [ "$engine_version" != "" ]; then 183 | + $sh_c "ros engine switch -f $engine_version" 184 | + fi 185 | + ) 186 | + exit 0 187 | + ;; 188 | *) 189 | if [ -z "$lsb_dist" ]; then 190 | if is_darwin; then 191 | -------------------------------------------------------------------------------- /pkg/26.1.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="6d9743e9656cc56f699a64800b098d5ea5a60020" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.1.3/26.1.3.diff: -------------------------------------------------------------------------------- 1 | --- 26.1.3.orig.sh 2024-05-22 00:47:21.446713254 +0000 2 | +++ 26.1.3.sh 2024-05-22 00:47:21.454713227 +0000 3 | @@ -82,28 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="6d9743e9656cc56f699a64800b098d5ea5a60020" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="26.1.3" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 7*) 20 | + releasever=7 21 | + ;; 22 | + 8*) 23 | + releasever=8 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -# * edge (deprecated) 35 | -# * nightly (deprecated) 36 | -DEFAULT_CHANNEL_VALUE="stable" 37 | -if [ -z "$CHANNEL" ]; then 38 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 39 | -fi 40 | - 41 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 42 | -if [ -z "$DOWNLOAD_URL" ]; then 43 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 44 | -fi 45 | - 46 | -DEFAULT_REPO_FILE="docker-ce.repo" 47 | -if [ -z "$REPO_FILE" ]; then 48 | - REPO_FILE="$DEFAULT_REPO_FILE" 49 | -fi 50 | + for channel in "stable" "test" "nightly"; do 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/\\\$basearch/${channel} --save"; 52 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/debug-\\\$basearch/${channel} --save"; 53 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/centos/${releasever}/source/${channel} --save"; 54 | + done 55 | +} 56 | 57 | mirror='' 58 | DRY_RUN=${DRY_RUN:-} 59 | @@ -159,6 +165,19 @@ 60 | ;; 61 | esac 62 | 63 | +start_docker() { 64 | + if [ ! -z $DIND_TEST ]; then 65 | + # Starting dockerd manually due to dind env is not using systemd 66 | + dockerd & 67 | + sleep $DIND_TEST_WAIT 68 | + elif [ -d '/run/systemd/system' ] ; then 69 | + $sh_c 'systemctl start docker' 70 | + else 71 | + $sh_c 'service docker start' 72 | + fi 73 | +} 74 | + 75 | + 76 | command_exists() { 77 | command -v "$@" > /dev/null 2>&1 78 | } 79 | @@ -450,10 +469,17 @@ 80 | esac 81 | ;; 82 | 83 | - centos|rhel) 84 | + centos|rhel|sles|rocky) 85 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 86 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 87 | fi 88 | + 89 | + ;; 90 | + 91 | + oracleserver|ol) 92 | + lsb_dist="ol" 93 | + # need to switch lsb_dist to match yum repo URL 94 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 95 | ;; 96 | 97 | *) 98 | @@ -550,16 +576,12 @@ 99 | set -x 100 | fi 101 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 102 | + start_docker 103 | ) 104 | echo_docker_as_nonroot 105 | exit 0 106 | ;; 107 | - centos|fedora|rhel) 108 | - if [ "$(uname -m)" != "s390x" ] && [ "$lsb_dist" = "rhel" ]; then 109 | - echo "Packages for RHEL are currently only available for s390x." 110 | - exit 1 111 | - fi 112 | - 113 | + centos|fedora|rhel|ol|rocky) 114 | if command_exists dnf; then 115 | pkg_manager="dnf" 116 | pkg_manager_flags="--best" 117 | @@ -582,6 +604,9 @@ 118 | pkg_suffix="el" 119 | fi 120 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 121 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 122 | + repo_file_url="$DOWNLOAD_URL/linux/centos/$REPO_FILE" 123 | + fi 124 | ( 125 | if ! is_dry_run; then 126 | set -x 127 | @@ -593,6 +618,25 @@ 128 | $sh_c "$config_manager $disable_channel_flag 'docker-ce-*'" 129 | $sh_c "$config_manager $enable_channel_flag 'docker-ce-$CHANNEL'" 130 | fi 131 | + if [ "$lsb_dist" = "rhel" ] || [ "$lsb_dist" = "ol" ]; then 132 | + adjust_repo_releasever "$dist_version" 133 | + # Add extra repo for version 7.x 134 | + if [[ "$dist_version" =~ "7." ]] || [ "$dist_version" == "7" ] ; then 135 | + if [ "$lsb_dist" = "rhel" ]; then 136 | + $sh_c "$config_manager $enable_channel_flag rhui-REGION-rhel-server-extras" 137 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-server-rhui-extras-rpms" 138 | + $sh_c "$config_manager $enable_channel_flag rhui-rhel-7-for-arm-64-extras-rhui-rpms" 139 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-rhui-extras-rpms" 140 | + $sh_c "$config_manager $enable_channel_flag rhel-7-server-extras-rpms" 141 | + else 142 | + $sh_c "$config_manager $enable_channel_flag ol7_addons" 143 | + # Adding OL7 developer repo if doesn't exist 144 | + if [ "$(yum repolist | grep yum.oracle.com_repo_OracleLinux_OL7_developer > /dev/null || echo add)" == "add" ]; then 145 | + $sh_c "$config_manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL7/developer/x86_64" 146 | + fi 147 | + fi 148 | + fi 149 | + fi 150 | $sh_c "$pkg_manager makecache" 151 | ) 152 | pkg_version="" 153 | @@ -649,6 +693,11 @@ 154 | echo "Packages for SLES are currently only available for s390x" 155 | exit 1 156 | fi 157 | + if [ "$dist_version" = "15.3" ]; then 158 | + sles_version="SLE_15_SP3" 159 | + else 160 | + sles_version="SLE_15_SP2" 161 | + fi 162 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 163 | pre_reqs="ca-certificates curl libseccomp2 awk" 164 | ( 165 | @@ -713,10 +762,25 @@ 166 | set -x 167 | fi 168 | $sh_c "zypper -q install -y $pkgs" 169 | + if ! command_exists iptables; then 170 | + $sh_c "$pkg_manager install -y -q iptables" 171 | + fi 172 | + start_docker 173 | ) 174 | echo_docker_as_nonroot 175 | exit 0 176 | ;; 177 | + rancheros) 178 | + ( 179 | + set -x 180 | + $sh_c "sleep 3;ros engine list --update" 181 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 182 | + if [ "$engine_version" != "" ]; then 183 | + $sh_c "ros engine switch -f $engine_version" 184 | + fi 185 | + ) 186 | + exit 0 187 | + ;; 188 | *) 189 | if [ -z "$lsb_dist" ]; then 190 | if is_darwin; then 191 | -------------------------------------------------------------------------------- /pkg/26.1.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="6d9743e9656cc56f699a64800b098d5ea5a60020" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" -------------------------------------------------------------------------------- /pkg/26.1.4/26.1.4.diff: -------------------------------------------------------------------------------- 1 | --- 26.1.4.orig.sh 2024-08-02 16:40:05.332421023 +0530 2 | +++ 26.1.4.sh 2024-08-02 16:46:37.518939203 +0530 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="26.1.4" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/26.1.4/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.0.1/27.0.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.0.1.orig.sh 2024-08-02 11:37:03.477154926 +0000 2 | +++ 27.0.1.sh 2024-08-02 11:37:03.481155021 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.0.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/27.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.0.2/27.0.2.diff: -------------------------------------------------------------------------------- 1 | --- 27.0.2.orig.sh 2024-08-02 11:39:29.572426882 +0000 2 | +++ 27.0.2.sh 2024-08-02 11:39:29.576426966 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.0.2" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/27.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.0.3/27.0.3.diff: -------------------------------------------------------------------------------- 1 | --- 27.0.3.orig.sh 2024-08-02 11:39:56.516986707 +0000 2 | +++ 27.0.3.sh 2024-08-02 11:39:56.520986790 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.0.3" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/27.0.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.1.0/27.1.0.diff: -------------------------------------------------------------------------------- 1 | --- 27.1.0.orig.sh 2024-08-02 11:41:12.866510421 +0000 2 | +++ 27.1.0.sh 2024-08-02 11:41:12.870510498 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.1.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/27.1.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.1.1/27.1.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.1.1.orig.sh 2024-08-02 11:41:57.795367787 +0000 2 | +++ 27.1.1.sh 2024-08-02 11:41:57.799367862 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.1.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -147,12 +155,29 @@ 58 | case "$CHANNEL" in 59 | stable|test) 60 | ;; 61 | + edge|nightly) 62 | + >&2 echo "DEPRECATED: the $CHANNEL channel has been deprecated and is no longer supported by this script." 63 | + exit 1 64 | + ;; 65 | *) 66 | >&2 echo "unknown CHANNEL '$CHANNEL': use either stable or test." 67 | exit 1 68 | ;; 69 | esac 70 | 71 | +start_docker() { 72 | + if [ ! -z $DIND_TEST ]; then 73 | + # Starting dockerd manually due to dind env is not using systemd 74 | + dockerd & 75 | + sleep $DIND_TEST_WAIT 76 | + elif [ -d '/run/systemd/system' ] ; then 77 | + $sh_c 'systemctl start docker' 78 | + else 79 | + $sh_c 'service docker start' 80 | + fi 81 | +} 82 | + 83 | + 84 | command_exists() { 85 | command -v "$@" > /dev/null 2>&1 86 | } 87 | @@ -173,7 +198,7 @@ 88 | if [ -z "$VERSION" ]; then 89 | return 0 90 | fi 91 | - version_compare "$VERSION" "$1" 92 | + eval version_compare "$VERSION" "$1" 93 | } 94 | 95 | # version_compare compares two version strings (either SemVer (Major.Minor.Path), 96 | @@ -444,10 +469,17 @@ 97 | esac 98 | ;; 99 | 100 | - centos|rhel) 101 | + centos|rhel|sles|rocky) 102 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 103 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 104 | fi 105 | + 106 | + ;; 107 | + 108 | + oracleserver|ol) 109 | + lsb_dist="ol" 110 | + # need to switch lsb_dist to match yum repo URL 111 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 112 | ;; 113 | 114 | *) 115 | @@ -547,11 +579,12 @@ 116 | set -x 117 | fi 118 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq $pkgs >/dev/null" 119 | + start_docker 120 | ) 121 | echo_docker_as_nonroot 122 | exit 0 123 | ;; 124 | - centos|fedora|rhel) 125 | + centos|fedora|rhel|ol|rocky) 126 | if command_exists dnf; then 127 | pkg_manager="dnf" 128 | pkg_manager_flags="--best" 129 | @@ -574,6 +607,9 @@ 130 | pkg_suffix="el" 131 | fi 132 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 133 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 134 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 135 | + fi 136 | ( 137 | if ! is_dry_run; then 138 | set -x 139 | @@ -641,6 +677,11 @@ 140 | echo "Packages for SLES are currently only available for s390x" 141 | exit 1 142 | fi 143 | + if [ "$dist_version" = "15.3" ]; then 144 | + sles_version="SLE_15_SP3" 145 | + else 146 | + sles_version="SLE_15_SP2" 147 | + fi 148 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 149 | pre_reqs="ca-certificates curl libseccomp2 awk" 150 | ( 151 | @@ -705,10 +746,25 @@ 152 | set -x 153 | fi 154 | $sh_c "zypper -q install -y $pkgs" 155 | + if ! command_exists iptables; then 156 | + $sh_c "$pkg_manager install -y -q iptables" 157 | + fi 158 | + start_docker 159 | ) 160 | echo_docker_as_nonroot 161 | exit 0 162 | ;; 163 | + rancheros) 164 | + ( 165 | + set -x 166 | + $sh_c "sleep 3;ros engine list --update" 167 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 168 | + if [ "$engine_version" != "" ]; then 169 | + $sh_c "ros engine switch -f $engine_version" 170 | + fi 171 | + ) 172 | + exit 0 173 | + ;; 174 | *) 175 | if [ -z "$lsb_dist" ]; then 176 | if is_darwin; then 177 | -------------------------------------------------------------------------------- /pkg/27.1.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="0d6f72e671ba87f7aa4c6991646a1a5b9f9dae84" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.1.2/27.1.2.diff: -------------------------------------------------------------------------------- 1 | --- 27.1.2.orig.sh 2024-09-23 16:15:03.414379934 +0530 2 | +++ 27.1.2.sh 2024-09-23 16:33:14.449307024 +0530 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="39040d838e8bcc48c23a0cc4117475dd15189976" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.1.2" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -659,6 +691,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -723,10 +760,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.1.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="39040d838e8bcc48c23a0cc4117475dd15189976" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.2.0/27.2.0.diff: -------------------------------------------------------------------------------- 1 | --- 27.2.0.orig.sh 2024-09-23 16:38:29.454804895 +0530 2 | +++ 27.2.0.sh 2024-09-23 16:38:29.470804364 +0530 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="39040d838e8bcc48c23a0cc4117475dd15189976" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.2.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -659,6 +691,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -723,10 +760,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.2.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="39040d838e8bcc48c23a0cc4117475dd15189976" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.2.1/27.2.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.2.1.orig.sh 2024-09-23 16:38:29.672797661 +0530 2 | +++ 27.2.1.sh 2024-09-23 16:38:29.678797462 +0530 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="39040d838e8bcc48c23a0cc4117475dd15189976" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.2.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -659,6 +691,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -723,10 +760,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.2.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="39040d838e8bcc48c23a0cc4117475dd15189976" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.3.0/27.3.0.diff: -------------------------------------------------------------------------------- 1 | --- 27.3.0.orig.sh 2024-12-11 00:11:51.128150145 +0000 2 | +++ 27.3.0.sh 2024-12-11 00:11:51.172150119 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="711a0d41213afabc30b963f82c56e1442a3efe1c" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.3.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -652,6 +684,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -716,10 +753,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.3.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="711a0d41213afabc30b963f82c56e1442a3efe1c" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.3.1/27.3.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.3.1.orig.sh 2024-12-11 00:11:51.244150076 +0000 2 | +++ 27.3.1.sh 2024-12-11 00:11:51.252150071 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="711a0d41213afabc30b963f82c56e1442a3efe1c" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.3.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -652,6 +684,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -716,10 +753,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.3.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="711a0d41213afabc30b963f82c56e1442a3efe1c" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.4.0/27.4.0.diff: -------------------------------------------------------------------------------- 1 | --- 27.4.0.orig.sh 2024-12-11 00:11:51.324150028 +0000 2 | +++ 27.4.0.sh 2024-12-11 00:11:51.328150026 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="711a0d41213afabc30b963f82c56e1442a3efe1c" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.4.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -444,10 +465,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -547,12 +575,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -652,6 +684,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -716,10 +753,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.4.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="711a0d41213afabc30b963f82c56e1442a3efe1c" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.4.1/27.4.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.4.1.orig.sh 2024-12-18 13:07:40.877562767 +0000 2 | +++ 27.4.1.sh 2024-12-18 13:07:40.897562840 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="c84dd77e3bbab4434b0ca76ca40597084ef228fe" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.4.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.4.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="c84dd77e3bbab4434b0ca76ca40597084ef228fe" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.5.0/27.5.0.diff: -------------------------------------------------------------------------------- 1 | --- 27.5.0.orig.sh 2025-01-15 00:10:48.577181348 +0000 2 | +++ 27.5.0.sh 2025-01-15 00:10:48.584181399 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.5.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.5.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/27.5.1/27.5.1.diff: -------------------------------------------------------------------------------- 1 | --- 27.5.1.orig.sh 2025-01-23 04:46:33.052740015 +0000 2 | +++ 27.5.1.sh 2025-01-23 04:46:33.058740097 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="27.5.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/27.5.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.0.0/28.0.0.diff: -------------------------------------------------------------------------------- 1 | --- 28.0.0.orig.sh 2025-04-14 04:38:11.951400609 +0000 2 | +++ 28.0.0.sh 2025-04-14 04:38:11.991400776 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="28.0.0" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/28.0.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.0.1/28.0.1.diff: -------------------------------------------------------------------------------- 1 | --- 28.0.1.orig.sh 2025-04-14 04:38:12.200401653 +0000 2 | +++ 28.0.1.sh 2025-04-14 04:38:12.204401670 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="28.0.1" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/28.0.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.0.2/28.0.2.diff: -------------------------------------------------------------------------------- 1 | --- 28.0.2.orig.sh 2025-04-14 04:38:12.389402446 +0000 2 | +++ 28.0.2.sh 2025-04-14 04:38:12.393402463 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="28.0.2" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/28.0.2/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.0.3/28.0.3.diff: -------------------------------------------------------------------------------- 1 | --- 28.0.3.orig.sh 2025-04-14 04:38:12.601403336 +0000 2 | +++ 28.0.3.sh 2025-04-14 04:38:12.605403353 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="28.0.3" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/28.0.3/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.0.4/28.0.4.diff: -------------------------------------------------------------------------------- 1 | --- 28.0.4.orig.sh 2025-04-14 04:38:12.803404184 +0000 2 | +++ 28.0.4.sh 2025-04-14 04:38:12.808404205 +0000 3 | @@ -82,26 +82,34 @@ 4 | # the script was uploaded (Should only be modified by upload job): 5 | SCRIPT_COMMIT_SHA="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 6 | 7 | -# strip "v" prefix if present 8 | -VERSION="${VERSION#v}" 9 | +CHANNEL="stable" 10 | +DOWNLOAD_URL="https://download.docker.com" 11 | +REPO_FILE="docker-ce.repo" 12 | +VERSION="28.0.4" 13 | +DIND_TEST_WAIT=${DIND_TEST_WAIT:-3s} # Wait time until docker start at dind test env 14 | + 15 | +# Issue https://github.com/rancher/rancher/issues/29246 16 | +adjust_repo_releasever() { 17 | + DOWNLOAD_URL="https://download.docker.com" 18 | + case $1 in 19 | + 8*) 20 | + releasever=8 21 | + ;; 22 | + 9*) 23 | + releasever=9 24 | + ;; 25 | + *) 26 | + # fedora, or unsupported 27 | + return 28 | + ;; 29 | + esac 30 | 31 | -# The channel to install from: 32 | -# * stable 33 | -# * test 34 | -DEFAULT_CHANNEL_VALUE="stable" 35 | -if [ -z "$CHANNEL" ]; then 36 | - CHANNEL=$DEFAULT_CHANNEL_VALUE 37 | -fi 38 | - 39 | -DEFAULT_DOWNLOAD_URL="https://download.docker.com" 40 | -if [ -z "$DOWNLOAD_URL" ]; then 41 | - DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL 42 | -fi 43 | - 44 | -DEFAULT_REPO_FILE="docker-ce.repo" 45 | -if [ -z "$REPO_FILE" ]; then 46 | - REPO_FILE="$DEFAULT_REPO_FILE" 47 | -fi 48 | + for channel in "stable" "test" "nightly"; do 49 | + $sh_c "$config_manager --setopt=docker-ce-${channel}.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/\\\$basearch/${channel} --save"; 50 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-debuginfo.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/debug-\\\$basearch/${channel} --save"; 51 | + $sh_c "$config_manager --setopt=docker-ce-${channel}-source.baseurl=${DOWNLOAD_URL}/linux/rhel/${releasever}/source/${channel} --save"; 52 | + done 53 | +} 54 | 55 | mirror='' 56 | DRY_RUN=${DRY_RUN:-} 57 | @@ -153,6 +161,19 @@ 58 | ;; 59 | esac 60 | 61 | +start_docker() { 62 | + if [ ! -z $DIND_TEST ]; then 63 | + # Starting dockerd manually due to dind env is not using systemd 64 | + dockerd & 65 | + sleep $DIND_TEST_WAIT 66 | + elif [ -d '/run/systemd/system' ] ; then 67 | + $sh_c 'systemctl start docker' 68 | + else 69 | + $sh_c 'service docker start' 70 | + fi 71 | +} 72 | + 73 | + 74 | command_exists() { 75 | command -v "$@" > /dev/null 2>&1 76 | } 77 | @@ -446,10 +467,17 @@ 78 | esac 79 | ;; 80 | 81 | - centos|rhel) 82 | + centos|rhel|sles|rocky) 83 | if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then 84 | dist_version="$(. /etc/os-release && echo "$VERSION_ID")" 85 | fi 86 | + 87 | + ;; 88 | + 89 | + oracleserver|ol) 90 | + lsb_dist="ol" 91 | + # need to switch lsb_dist to match yum repo URL 92 | + dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')" 93 | ;; 94 | 95 | *) 96 | @@ -549,12 +577,16 @@ 97 | set -x 98 | fi 99 | $sh_c "DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $pkgs >/dev/null" 100 | + start_docker 101 | ) 102 | echo_docker_as_nonroot 103 | exit 0 104 | ;; 105 | - centos|fedora|rhel) 106 | + centos|fedora|rhel|ol|rocky) 107 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 108 | + if [ "$lsb_dist" = "ol" ] || [ "$lsb_dist" = "rocky" ] || [ "$lsb_dist" = "rhel" ]; then 109 | + repo_file_url="$DOWNLOAD_URL/linux/rhel/$REPO_FILE" 110 | + fi 111 | ( 112 | if ! is_dry_run; then 113 | set -x 114 | @@ -656,6 +688,11 @@ 115 | echo "Packages for SLES are currently only available for s390x" 116 | exit 1 117 | fi 118 | + if [ "$dist_version" = "15.3" ]; then 119 | + sles_version="SLE_15_SP3" 120 | + else 121 | + sles_version="SLE_15_SP2" 122 | + fi 123 | repo_file_url="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" 124 | pre_reqs="ca-certificates curl libseccomp2 awk" 125 | ( 126 | @@ -725,10 +762,25 @@ 127 | set -x 128 | fi 129 | $sh_c "zypper -q install -y $pkgs" 130 | + if ! command_exists iptables; then 131 | + $sh_c "$pkg_manager install -y -q iptables" 132 | + fi 133 | + start_docker 134 | ) 135 | echo_docker_as_nonroot 136 | exit 0 137 | ;; 138 | + rancheros) 139 | + ( 140 | + set -x 141 | + $sh_c "sleep 3;ros engine list --update" 142 | + engine_version="$(sudo ros engine list | awk '{print $2}' | grep ${docker_version} | tail -n 1)" 143 | + if [ "$engine_version" != "" ]; then 144 | + $sh_c "ros engine switch -f $engine_version" 145 | + fi 146 | + ) 147 | + exit 0 148 | + ;; 149 | *) 150 | if [ -z "$lsb_dist" ]; then 151 | if is_darwin; then 152 | -------------------------------------------------------------------------------- /pkg/28.0.4/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="4c94a56999e10efcf48c5b8e3f6afea464f9108e" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.1.0/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="53a22f61c0628e58e1d6680b49e82993d304b449" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /pkg/28.1.1/config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | DOCKER_GIT_COMMIT="53a22f61c0628e58e1d6680b49e82993d304b449" 4 | 5 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 6 | TEST_OS_IMAGE_TAG[0]="8 9" 7 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 8 | TEST_OS_IMAGE_TAG[2]="8 9" 9 | TEST_OS_IMAGE_TAG[3]="9.4" 10 | TEST_OS_IMAGE_TAG[4]="stream9" 11 | TEST_OS_IMAGE_TAG[5]="8.9" 12 | -------------------------------------------------------------------------------- /scripts/add-new-version: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -ex 3 | 4 | mkdir ./pkg/${ADD_DOCKER_VERSION} 5 | cd ./pkg/${ADD_DOCKER_VERSION} 6 | curl -Lsk http://get.docker.com/ -o ${ADD_DOCKER_VERSION}.orig.sh 7 | cp -p ${ADD_DOCKER_VERSION}.orig.sh ${ADD_DOCKER_VERSION}.sh 8 | 9 | # apply diff from other version 10 | patch -p1 ${ADD_DOCKER_VERSION}.sh ../${PREVIOUS_ADD_DOCKER_VERSION}/${PREVIOUS_ADD_DOCKER_VERSION}.diff 11 | 12 | # replace DOCKER_VERSION 13 | sed -i '/^VERSION=/s/=.*$/="'"${ADD_DOCKER_VERSION}"'"/' ${ADD_DOCKER_VERSION}.sh 14 | 15 | # creating new diff 16 | diff -uNr ${ADD_DOCKER_VERSION}.orig.sh ${ADD_DOCKER_VERSION}.sh > ${ADD_DOCKER_VERSION}.diff || true 17 | 18 | # grep SHA commit 19 | COMMIT_SHA=$(grep SCRIPT_COMMIT_SHA= ${ADD_DOCKER_VERSION}.sh | awk -F'=' '{ print $2 }' | sed 's/"//g') 20 | 21 | # remove non diff files 22 | rm -f ${ADD_DOCKER_VERSION}.sh ${ADD_DOCKER_VERSION}.orig.sh 23 | 24 | # Change commit SHA 25 | cat ../${PREVIOUS_ADD_DOCKER_VERSION}/config.sh | sed '/^DOCKER_GIT_COMMIT=/s/=.*$/="'"${COMMIT_SHA}"'"/' > config.sh 26 | -------------------------------------------------------------------------------- /scripts/ci: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | cd $(dirname $0) 5 | 6 | ./validate 7 | ./test 8 | -------------------------------------------------------------------------------- /scripts/entry: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | DOCKER_TLS_CERTDIR="" 5 | dockerd &>/dev/null & 6 | 7 | mkdir -p bin dist 8 | if [ -e ./scripts/$1 ]; then 9 | ./scripts/"$@" 10 | else 11 | exec "$@" 12 | fi 13 | 14 | chown -R $DAPPER_UID:$DAPPER_GID . 15 | -------------------------------------------------------------------------------- /scripts/generate: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | cd $(dirname $0) 5 | 6 | ./validate 7 | ./generate-dist-files 8 | -------------------------------------------------------------------------------- /scripts/generate-dist-files: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -ex 3 | 4 | cd $(dirname $0) 5 | 6 | cd ../pkg 7 | 8 | echo "==> Generating install-docker scripts..." 9 | 10 | DOCKER_GIT_COMMIT_LAST=$(curl -Lsk http://get.docker.com/ | grep "^SCRIPT_COMMIT_SHA=" | cut -d= -f2 | tr -d '"') 11 | 12 | for DOCKER_VERSION in $(ls -1 .); do 13 | if [ -f "${DOCKER_VERSION}/${DOCKER_VERSION}.diff" ] ; then 14 | echo "==> Checking pkg/$DOCKER_VERSION ..." 15 | if [ -f $DOCKER_VERSION/config.sh ]; then 16 | source $DOCKER_VERSION/config.sh 17 | fi 18 | DOCKER_GIT_REPO=${DOCKER_GIT_REPO:-"https://github.com/docker/docker-install"} 19 | if [ -z "${DOCKER_GIT_COMMIT}" ]; then 20 | echo "==> [ERROR] DOCKER_GIT_COMMIT var should be defined at pkg/$DOCKER_VERSION/config.sh" 21 | exit 1 22 | fi 23 | if [ ! -z "$DOCKER_GIT_COMMIT_LAST" ]; then 24 | if [ $DOCKER_GIT_COMMIT != $DOCKER_GIT_COMMIT_LAST ]; then 25 | echo "==> [INFO] dist/$DOCKER_VERSION_SHORT/$DOCKER_VERSION.sh is generated from DOCKER_GIT_COMMIT [$DOCKER_GIT_COMMIT], latest released commit is [$DOCKER_GIT_COMMIT_LAST]" 26 | fi 27 | fi 28 | if [ ! -f ../dist/$DOCKER_VERSION.sh ]; then 29 | echo "==> Generating dist/$DOCKER_VERSION.sh..." 30 | cd $DOCKER_VERSION 31 | if [ -d docker-install ]; then 32 | rm -rf docker-install 33 | fi 34 | git clone ${DOCKER_GIT_REPO} 35 | cd docker-install 36 | git checkout ${DOCKER_GIT_COMMIT} 37 | make 38 | cp build/install.sh ../$DOCKER_VERSION.sh 39 | cd .. && rm -rf docker-install 40 | patch $DOCKER_VERSION.sh $DOCKER_VERSION.diff 41 | cd .. 42 | mv $DOCKER_VERSION/$DOCKER_VERSION.sh ../dist/ 43 | echo "[OK] Generated dist/$DOCKER_VERSION.sh" 44 | DOCKER_VERSION_SHORT=$(echo $DOCKER_VERSION| cut -d. -f1,2) 45 | echo " Update dist/$DOCKER_VERSION_SHORT.sh link if required: rm $DOCKER_VERSION_SHORT.sh && ln -s $DOCKER_VERSION.sh $DOCKER_VERSION_SHORT.sh" 46 | else 47 | echo "[OK] Skipped dist/$DOCKER_VERSION.sh already generated..." 48 | fi 49 | unset DOCKER_GIT_REPO DOCKER_GIT_COMMIT 50 | fi 51 | done 52 | -------------------------------------------------------------------------------- /scripts/generate-release-tag: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Find latest Docker version 4 | LATEST_DOCKER=$(ls -1 dist/ | grep \.sh$ | sort -V | tail -1 | sed -e 's/\.sh//') 5 | 6 | # Get epoch 7 | EPOCH=$(date +%s) 8 | 9 | echo "${LATEST_DOCKER}+${EPOCH}" 10 | -------------------------------------------------------------------------------- /scripts/sync: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd $(dirname $0)/.. 4 | gsutil rsync -c -r -d ./dist gs://releases.rancher.com/install-docker 5 | -------------------------------------------------------------------------------- /scripts/test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | cd $(dirname $0) 5 | 6 | ./test-docker 7 | -------------------------------------------------------------------------------- /scripts/test-docker: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | declare -A test_docker_versions 3 | declare -A docker_versions_passed 4 | declare -A docker_versions_failed 5 | 6 | FAIL="false" 7 | 8 | cd $(dirname $0) 9 | 10 | echo "==> Waiting for Docker daemon to be started" 11 | while true; do 12 | docker version &>/dev/null && break 13 | sleep 5 14 | done 15 | 16 | 17 | test_docker_versions["ubuntu:22.04"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 18 | test_docker_versions["ubuntu:24.04"]="^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 19 | test_docker_versions["quay.io/centos/centos:stream9"]="^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 20 | test_docker_versions["oraclelinux:8"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 21 | test_docker_versions["oraclelinux:9"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 22 | test_docker_versions["rockylinux:8"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 23 | test_docker_versions["rockylinux:9"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 24 | test_docker_versions["redhat/ubi8:8.9"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 25 | test_docker_versions["redhat/ubi9:9.4"]="^23.0.([4-9]|[1-9]\d)$|^24.0|^25.0|^26.0|^26.1|^27.0|^27.1|^28.0|^28.1" 26 | 27 | echo "==> Testing install-docker scripts..." 28 | for DOCKER_VERSION_SCRIPT in $(find ../dist/ -mindepth 1 -type f -exec basename {} \; | sort -V); do 29 | DOCKER_VERSION=$(echo $DOCKER_VERSION_SCRIPT | sed 's/\.sh//') 30 | echo "==> Found $DOCKER_VERSION_SCRIPT" 31 | unset TEST_OS_IMAGE_NAME 32 | unset TEST_OS_IMAGE_TAG 33 | if [ -f ../dist/$DOCKER_VERSION_SCRIPT ] ; then 34 | if [ -f ../pkg/$DOCKER_VERSION/config.sh ]; then 35 | source ../pkg/$DOCKER_VERSION/config.sh 36 | fi 37 | if [ -z "${TEST_OS_IMAGE_NAME}" ] && [ -z "${TEST_OS_IMAGE_TAG}" ]; then 38 | TEST_OS_IMAGE_NAME=(oraclelinux ubuntu rockylinux redhat/ubi9 quay.io/centos/centos redhat/ubi8) 39 | TEST_OS_IMAGE_TAG[0]="8 9" 40 | TEST_OS_IMAGE_TAG[1]="22.04 24.04" 41 | TEST_OS_IMAGE_TAG[2]="8 9" 42 | TEST_OS_IMAGE_TAG[3]="9.4" 43 | TEST_OS_IMAGE_TAG[4]="stream9" 44 | TEST_OS_IMAGE_TAG[5]="8.9" 45 | elif [ -z "${TEST_OS_IMAGE_NAME}" ] || [ -z "${TEST_OS_IMAGE_TAG}" ]; then 46 | echo "Both TEST_OS_IMAGE_NAME and TEST_OS_IMAGE_TAG must be set for ${DOCKER_VERSION}" 47 | fi 48 | for (( index=0; index<${#TEST_OS_IMAGE_NAME[@]}; index++ )); do 49 | IMAGE=${TEST_OS_IMAGE_NAME[$index]} 50 | for TAG in ${TEST_OS_IMAGE_TAG[$index]}; do 51 | DOCKER_REGEX=${test_docker_versions["${IMAGE}:${TAG}"]} 52 | if [[ "x${DOCKER_REGEX}" != "x" ]]; then 53 | DOCKER_REGEX_RESULT=$(echo $DOCKER_VERSION | grep -E $DOCKER_REGEX) 54 | if [[ "x${DOCKER_REGEX_RESULT}" == "x" ]]; then 55 | echo "==> Skipping ${DOCKER_VERSION} for ${IMAGE}:${TAG}" 56 | continue 57 | fi 58 | fi 59 | echo "==> Testing $DOCKER_VERSION at ${IMAGE}:${TAG}..." 60 | COMMAND="echo '' > /usr/bin/systemctl && bash /install.sh && bash -c 'if [[ \"\$(docker version --format '{{.Client.Version}}') 2>/dev/null\" != ${DOCKER_VERSION}* ]]; then echo \"Found version (\$(docker version --format '{{.Client.Version}}')) does not match \"${DOCKER_VERSION}\"\"; exit 1; fi'" 61 | # Patch for oracle linux 8 docker image as yum is not installed 62 | if [ "$IMAGE" == "oraclelinux" ] && [ "$TAG" == "8" ]; then 63 | COMMAND="echo '' > /usr/bin/systemctl && dnf install -y yum && bash /install.sh && bash -c 'if [[ \"\$(docker version --format '{{.Client.Version}}') 2>/dev/null\" != ${DOCKER_VERSION}* ]]; then echo \"Found version (\$(docker version --format '{{.Client.Version}}')) does not match \"${DOCKER_VERSION}\"\"; exit 1; fi'" 64 | fi 65 | docker run -d --privileged \ 66 | --label install-docker="true" \ 67 | --label install-docker-image="${IMAGE}" \ 68 | --label install-docker-tag="${TAG}" \ 69 | --label install-docker-version="${DOCKER_VERSION}" \ 70 | -v /install-docker/dist/$DOCKER_VERSION_SCRIPT:/install.sh \ 71 | -v /pkgcache-yum/${IMAGE}-${TAG}/:/var/cache/yum \ 72 | -v /pkgcache-dnf/${IMAGE}-${TAG}/:/var/cache/dnf \ 73 | -v /pkgcache-apt/${IMAGE}-${TAG}/:/var/cache/apt \ 74 | -e DIND_TEST=true \ 75 | ${IMAGE}:${TAG} \ 76 | sh -c "${COMMAND}" 77 | done 78 | done 79 | echo "==> Waiting for all tests for Docker version ${DOCKER_VERSION} are complete" 80 | while true; do 81 | RUNNINGCONTAINERS=$(docker ps -q --filter "label=install-docker") 82 | if [[ "x${RUNNINGCONTAINERS}" == "x" ]]; then 83 | break 84 | fi 85 | echo "==> Still running for ${DOCKER_VERSION}: $(echo "${RUNNINGCONTAINERS}")" 86 | echo "==> Sleeping 15 seconds to check tests for Docker version ${DOCKER_VERSION}" 87 | sleep 15 88 | done 89 | # Gathering all containers to save exit code 90 | ALLEXITEDCONTAINERS=$(docker ps -qa --filter "label=install-docker-version=${DOCKER_VERSION}") 91 | for CONTAINER in $ALLEXITEDCONTAINERS; do 92 | EXITCODE=$(docker inspect $CONTAINER --format='{{.State.ExitCode}}') 93 | IMAGE=$(docker inspect $CONTAINER --format='{{ index .Config.Labels "install-docker-image" }}') 94 | TAG=$(docker inspect $CONTAINER --format='{{ index .Config.Labels "install-docker-tag" }}') 95 | DOCKER_VERSION=$(docker inspect $CONTAINER --format='{{ index .Config.Labels "install-docker-version" }}') 96 | echo "${IMAGE}:${TAG}-${DOCKER_VERSION} exit code $EXITCODE" 97 | if [ $EXITCODE -eq 0 ]; then 98 | docker_versions_passed["${IMAGE}:${TAG}-${DOCKER_VERSION}"]="$EXITCODE" 99 | else 100 | FAIL="true" 101 | docker_versions_failed["${IMAGE}:${TAG}-${DOCKER_VERSION}"]="$EXITCODE" 102 | echo "Showing logs for ${IMAGE}:${TAG}-${DOCKER_VERSION}" 103 | docker logs --tail=10 $CONTAINER 104 | fi 105 | echo "==> Cleaning up container ${CONTAINER}" 106 | docker rm -f $CONTAINER 107 | done 108 | unset TEST_OS_DISTRO_IMAGE TEST_OS_IMAGE_TAG 109 | fi 110 | done 111 | 112 | echo "" 113 | echo "---- TEST RESULTS ----" 114 | for result in "${!docker_versions_passed[@]}"; do 115 | echo "[PASS] ${result} exit code: ${docker_versions_passed[$result]}" 116 | done 117 | 118 | if [[ "${FAIL}" == "true" ]]; then 119 | for result in "${!docker_versions_failed[@]}"; do 120 | echo "[FAIL] ${result} exit code: ${docker_versions_failed[${result}]}" 121 | done 122 | exit 1 123 | fi 124 | -------------------------------------------------------------------------------- /scripts/validate: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | cd $(dirname $0) 5 | 6 | # Thanks to https://gist.github.com/rverst/1f0b97da3cbeb7d93f4986df6e8e5695 7 | function chsv_check_version() { 8 | if [[ $1 =~ ^(0|[1-9][0-9]*)\.(0|[0-9][0-9]*)\.(0|[0-9][0-9]*)(-((0|[0-9][0-9]*|[0-9]*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9][0-9]*|[0-9]*[a-zA-Z-][0-9a-zA-Z-]*))*))?(\+([0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*))?$ ]]; then 9 | echo "$1" 10 | else 11 | echo "" 12 | fi 13 | } 14 | 15 | echo "==> Checking if pkg directory contains only semver compatible version" 16 | 17 | for DOCKER_VERSION in $(ls -1 ../pkg/); do 18 | SEMVER=$(chsv_check_version $DOCKER_VERSION) 19 | if [ -z $SEMVER ]; then 20 | echo "[ERR] Version found in pkg directory is not semver (${DOCKER_VERSION})" 21 | exit 1 22 | fi 23 | done 24 | 25 | echo "==> Checking if dist directory contains only semver compatible version" 26 | 27 | for DOCKER_VERSION in $(find ../dist/ -mindepth 1 -type f -exec basename {} \; | sed 's/\.sh//'); do 28 | SEMVER=$(chsv_check_version $DOCKER_VERSION) 29 | if [ -z $SEMVER ]; then 30 | echo "[ERR] Version found in dist directory is not semver (${DOCKER_VERSION})" 31 | exit 1 32 | fi 33 | done 34 | 35 | 36 | echo "==> Checking basic shell validation" 37 | find ../dist -name \*.sh -exec sh -n {} \; 38 | 39 | 40 | echo "==> Checking if all symlinks in dist are pointing to the latest versions" 41 | 42 | for LINK_PREFIX in `find ../dist/ -type l -exec basename {} \; | grep sh | sed 's/\.sh//'| sort -V` 43 | do 44 | 45 | TARGET_FILE=`readlink ../dist/$LINK_PREFIX.sh` 46 | EXPECTED_TARGET_FILE=`find ../dist/ -type f -name "$LINK_PREFIX*" -exec basename {} \; | sort -V | tail -1` 47 | 48 | if [[ $EXPECTED_TARGET_FILE == $TARGET_FILE ]] 49 | then 50 | echo "[INF] $LINK_PREFIX.sh is pointing to the latest $TARGET_FILE" 51 | else 52 | echo "[ERR] $LINK_PREFIX.sh is pointing to $TARGET_FILE instead of the latest version $EXPECTED_TARGET_FILE" 53 | exit 1 54 | fi 55 | done 56 | -------------------------------------------------------------------------------- /workflow_scripts/check-for-new-versions.py: -------------------------------------------------------------------------------- 1 | import os 2 | import requests 3 | 4 | # Constants 5 | DIST_FOLDER = './dist' 6 | EXCLUDED_VERSIONS = os.environ.get('EXCLUDED_VERSIONS', 'v20.10.x,v23.0.x,v25.0.x,v26.1.x') 7 | 8 | def get_excluded_version_patterns(excluded_ver_str): 9 | excluded_ver_list = excluded_ver_str.split(',') 10 | excluded_patterns = [] 11 | for ver in excluded_ver_list: 12 | ver_parts = ver.split('.') 13 | if len(ver_parts) == 3: 14 | if ver_parts[1] == 'x': 15 | excluded_patterns.append(ver_parts[0]) 16 | elif ver_parts[2] == 'x': 17 | excluded_patterns.append(ver_parts[0] + '.'+ ver_parts[1]) 18 | else: 19 | excluded_patterns.append(ver) 20 | return excluded_patterns 21 | 22 | 23 | def is_excluded_version(excluded_patterns,version): 24 | for pattern in excluded_patterns: 25 | if version.startswith(pattern): 26 | return True 27 | return False 28 | 29 | def get_existing_versions(files_dir): 30 | existing_versions = set() 31 | for file in os.listdir(files_dir): 32 | if file.endswith('.sh') and file.count('.') == 3: 33 | existing_versions.add('v' + file[:-3]) 34 | return existing_versions 35 | 36 | def fetch_ten_latest_github_releases(owner, repo): 37 | url = f"https://api.github.com/repos/{owner}/{repo}/releases" 38 | try: 39 | response = requests.get(url) 40 | response.raise_for_status() # Raise exception for bad status codes 41 | releases = [release for release in response.json() if not release.get('prerelease')] 42 | return sorted(releases, key=lambda x: x['created_at'], reverse=True)[:10] 43 | except requests.exceptions.RequestException as e: 44 | print(f"Failed to fetch releases: {e}") 45 | return None 46 | 47 | def get_version_tuple(version): 48 | if version.startswith('v'): 49 | version = version[1:] 50 | return tuple(map(int, version.split('.'))) 51 | 52 | def main(): 53 | excluded_ver_patterns = get_excluded_version_patterns(EXCLUDED_VERSIONS) 54 | existing_versions = get_existing_versions(DIST_FOLDER) 55 | owner = "moby" 56 | repo = "moby" 57 | ten_latest_releases = fetch_ten_latest_github_releases(owner, repo) 58 | ten_latest_versions = [release['tag_name'] for release in ten_latest_releases] 59 | print("Ten latest versions: ",ten_latest_versions) 60 | 61 | new_versions = set(ten_latest_versions) - existing_versions 62 | new_versions = list(filter(lambda ver: not is_excluded_version(excluded_ver_patterns,ver),new_versions)) 63 | 64 | sorted_new_versions = sorted(new_versions,key=get_version_tuple) 65 | print('New versions: ',sorted_new_versions) 66 | 67 | versions_string = ",".join(sorted_new_versions) 68 | PR_TITLE = "" 69 | 70 | if versions_string != "": 71 | PR_TITLE = "[Auto] Add docker " + versions_string 72 | print('PR Title: ', PR_TITLE) 73 | 74 | env_file = os.getenv('GITHUB_ENV') 75 | 76 | if env_file: 77 | with open(env_file, "a") as envfile: 78 | envfile.write("PR_TITLE="+PR_TITLE+"\n") 79 | envfile.write("NEW_VERSIONS="+versions_string+"\n") 80 | else: 81 | exit(1) 82 | 83 | 84 | 85 | if __name__ == "__main__": 86 | main() 87 | -------------------------------------------------------------------------------- /workflow_scripts/gen-new-version-files.py: -------------------------------------------------------------------------------- 1 | import os 2 | import subprocess 3 | import semver 4 | 5 | # Constants 6 | DIST_FOLDER = './dist' 7 | NEW_VERSIONS = os.environ.get("NEW_VERSIONS","") 8 | SCRIPT_EXTENSION=".sh" 9 | 10 | if NEW_VERSIONS == "": 11 | print("no new versions available, NEW_VERSIONS env variable is empty") 12 | exit(1) 13 | 14 | def get_last_added_version(files_dir): 15 | max_modification_time = 0.0 16 | last_added_version = "0.0.0" 17 | for file in os.listdir(files_dir): 18 | if file.endswith(SCRIPT_EXTENSION) and file.count('.') == 3: 19 | file_path = os.path.join(files_dir, file) 20 | modification_time = os.path.getmtime(file_path) 21 | file_version = file.removesuffix(SCRIPT_EXTENSION) 22 | if modification_time > max_modification_time: 23 | max_modification_time = modification_time 24 | last_added_version = file_version 25 | elif modification_time == max_modification_time: 26 | last_added_version = semver.max_ver(last_added_version,file_version) 27 | 28 | return last_added_version 29 | 30 | def generate_diffs(prev_version, current_version): 31 | print("executing add-new-version-script with PREVIOUS_ADD_DOCKER_VERSION: ",prev_version, 32 | " ADD_DOCKER_VERSION",current_version) 33 | add_new_version_script_path = "./scripts/add-new-version" 34 | env_vars = {"PREVIOUS_ADD_DOCKER_VERSION": prev_version, "ADD_DOCKER_VERSION": current_version} 35 | subprocess.run(["bash", add_new_version_script_path], check=True, env=env_vars) 36 | 37 | # it will return a dictonary with key set to major.minor of a version and the 38 | # value will be the greatest version for that major minor combination 39 | def get_version_dict(versions): 40 | version_dict = {} 41 | 42 | for version in versions: 43 | version_parts = semver.parse(version) 44 | major_minor = f"{version_parts['major']}.{version_parts['minor']}" 45 | version_dict[major_minor] = semver.max_ver(version_dict.setdefault(major_minor, version), version) 46 | 47 | return version_dict 48 | 49 | def main(): 50 | 51 | last_added_version = get_last_added_version(DIST_FOLDER) 52 | print("Last added version:",last_added_version) 53 | 54 | version_list = [version.removeprefix('v') for version in NEW_VERSIONS.split(',')] 55 | print("Formatted new versions: ", version_list) 56 | 57 | for version in version_list: 58 | generate_diffs(last_added_version, version) 59 | 60 | print("running generate script") 61 | subprocess.run(["bash", "./scripts/generate"], check=True) 62 | 63 | version_dict = get_version_dict(version_list) 64 | print("version dictionary for symlink: ",version_dict) 65 | 66 | for major_minor,version in version_dict.items(): 67 | subprocess.call(['rm',f"{DIST_FOLDER}/{major_minor}.sh"]) 68 | os.symlink(f"{version}.sh",f"{DIST_FOLDER}/{major_minor}.sh") 69 | 70 | if __name__ == "__main__": 71 | main() 72 | -------------------------------------------------------------------------------- /workflow_scripts/requirements.txt: -------------------------------------------------------------------------------- 1 | Requests==2.31.0 2 | semver==3.0.2 3 | --------------------------------------------------------------------------------