diff --git a/ci/pipeline.yml b/ci/pipeline.yml index e72076bf4b..143c72e387 100644 --- a/ci/pipeline.yml +++ b/ci/pipeline.yml @@ -27,14 +27,6 @@ resources: username: ((github-username)) password: ((github-password)) branch: ((branch)) -- name: git-repo-ci-docker - type: git - icon: github-circle - source: - uri: ((github-repo)) - username: ((github-username)) - password: ((github-password)) - branch: ci-docker-((branch)) - name: git-repo-windows type: git source: @@ -192,7 +184,6 @@ jobs: - name: detect-docker-updates plan: - get: git-repo - - get: git-repo-ci-docker - get: every-wednesday trigger: true - get: spring-boot-ci-image @@ -200,23 +191,11 @@ jobs: - task: detect-docker-updates file: git-repo/ci/tasks/detect-docker-updates.yml params: - GITHUB_REPO: spring-boot - GITHUB_ORGANIZATION: spring-projects - MILESTONE: ((milestone)) - image: spring-boot-ci-image - - put: git-repo-ci-docker - params: - repository: git-repo-updated - force: true - - task: create-pull-request - file: git-repo/ci/tasks/create-pull-request.yml - params: - BASE_BRANCH: ((branch)) - BRANCH: ci-docker-((branch)) GITHUB_REPO: spring-boot GITHUB_ORGANIZATION: spring-projects GITHUB_PASSWORD: ((github-password)) GITHUB_USERNAME: ((github-username)) + MILESTONE: ((milestone)) image: spring-boot-ci-image - name: build serial: true diff --git a/ci/scripts/create-pull-request.sh b/ci/scripts/create-pull-request.sh deleted file mode 100755 index bd6cdb5569..0000000000 --- a/ci/scripts/create-pull-request.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -set -e - -if [[ -f commit-details/message ]]; then - ISSUE_TITLE="$(cat commit-details/message)" - curl \ - -s \ - -u ${GITHUB_USERNAME}:${GITHUB_PASSWORD} \ - -H "Content-type:application/json" \ - -d "{\"head\":\"${BRANCH}\",\"base\":\"${BASE_BRANCH}\",\"title\":\"${ISSUE_TITLE}\",\"body\":\"\",\"labels\":[\"status: waiting-for-triage\",\"type: task\"]}" \ - -f \ - -X \ - POST "https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/pulls" > /dev/null || { echo "Failed to create pull request" >&2; exit 1; } -else - echo "Already up-to-date." -fi \ No newline at end of file diff --git a/ci/scripts/detect-docker-updates.sh b/ci/scripts/detect-docker-updates.sh index 529b6242c0..f386d30cf4 100755 --- a/ci/scripts/detect-docker-updates.sh +++ b/ci/scripts/detect-docker-updates.sh @@ -1,25 +1,16 @@ #!/bin/bash latest_version=$(curl -I -s https://github.com/docker/docker-ce/releases/latest | grep "location:" | awk '{n=split($0, parts, "/"); print substr(parts[n],2);}' | awk '{$1=$1;print}' | tr -d '\r' | tr -d '\n' ) -title_prefix="Upgrade CI to Docker" - -milestone_number=$( curl -s https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/milestones\?state\=open | jq -c --arg MILESTONE "$MILESTONE" '.[] | select(.title==$MILESTONE)' | jq -r '.number') - -existing_upgrade_issues=$( curl -s https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/issues\?labels\=type:%20task\&state\=open\&creator\=spring-buildmaster\&milestone\=${milestone_number} | jq -c --arg TITLE_PREFIX "$title_prefix" '.[] | select(.pull_request != null) | select(.title | startswith($TITLE_PREFIX))' ) - -if [[ ${existing_upgrade_issues} = "" ]]; then - git clone git-repo git-repo-updated > /dev/null -else - git clone git-repo-ci-docker git-repo-updated > /dev/null - echo "Pull request already exists." - exit 0 -fi if [[ $latest_version =~ (beta|rc) ]]; then echo "Skip pre-release versions" exit 0; fi +title_prefix="Upgrade CI to Docker" +milestone_number=$( curl -s https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/milestones\?state\=open | jq -c --arg MILESTONE "$MILESTONE" '.[] | select(.title==$MILESTONE)' | jq -r '.number') +existing_upgrade_issues=$( curl -s https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/issues\?labels\=type:%20task\&state\=open\&creator\=spring-buildmaster\&milestone\=${milestone_number} | jq -c --arg TITLE_PREFIX "$title_prefix" '.[] | select(.title | startswith($TITLE_PREFIX))' ) + latest="https://download.docker.com/linux/static/stable/x86_64/docker-$latest_version.tgz" current=$( git-repo/ci/images/get-docker-url.sh ) @@ -28,12 +19,17 @@ if [[ $current = $latest ]]; then exit 0; fi -pushd git-repo-updated > /dev/null -git config user.name "Spring Buildmaster" > /dev/null -git config user.email "buildmaster@springframework.org" > /dev/null -sed -i "s/version=.*/version=\"$latest_version\"/" ci/images/get-docker-url.sh -git add ci/images/get-docker-url.sh > /dev/null -commit_message="$title_prefix $latest_version" -git commit -m "$commit_message" > /dev/null -popd -echo ${commit_message} > commit-details/message \ No newline at end of file +ISSUE_TITLE="$title_prefix $latest_version" + +if [[ ${existing_upgrade_issues} = "" ]]; then + curl \ + -s \ + -u ${GITHUB_USERNAME}:${GITHUB_PASSWORD} \ + -H "Content-type:application/json" \ + -d "{\"title\":\"${ISSUE_TITLE}\",\"milestone\":\"${milestone_number}\",\"body\": \"${latest}\",\"labels\":[\"status: waiting-for-triage\",\"type: task\"]}" \ + -f \ + -X \ + POST "https://api.github.com/repos/${GITHUB_ORGANIZATION}/${GITHUB_REPO}/issues" > /dev/null || { echo "Failed to create issue" >&2; exit 1; } +else + echo "Issue already exists." +fi \ No newline at end of file diff --git a/ci/tasks/create-pull-request.yml b/ci/tasks/create-pull-request.yml deleted file mode 100644 index c7639b67a6..0000000000 --- a/ci/tasks/create-pull-request.yml +++ /dev/null @@ -1,14 +0,0 @@ ---- -platform: linux -inputs: - - name: git-repo - - name: commit-details -params: - BASE_BRANCH: - BRANCH: - GITHUB_REPO: - GITHUB_ORGANIZATION: - GITHUB_PASSWORD: - GITHUB_USERNAME: -run: - path: git-repo/ci/scripts/create-pull-request.sh diff --git a/ci/tasks/detect-docker-updates.yml b/ci/tasks/detect-docker-updates.yml index 92817b8371..d2413600a8 100644 --- a/ci/tasks/detect-docker-updates.yml +++ b/ci/tasks/detect-docker-updates.yml @@ -2,13 +2,11 @@ platform: linux inputs: - name: git-repo - - name: git-repo-ci-docker -outputs: - - name: git-repo-updated - - name: commit-details params: GITHUB_REPO: GITHUB_ORGANIZATION: + GITHUB_PASSWORD: + GITHUB_USERNAME: MILESTONE: run: path: git-repo/ci/scripts/detect-docker-updates.sh