From 80ed49559139ef0aea000c766b98392f9eab3ef9 Mon Sep 17 00:00:00 2001 From: Rongxin Liu Date: Sun, 16 Jul 2023 19:05:30 -0400 Subject: [PATCH] removed travis, use github action --- .github/workflows/main.yml | 56 ++++++++++++++++++++++++++++++++++++++ .travis.yml | 19 ------------- 2 files changed, 56 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/main.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..c4a6cdf --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,56 @@ +on: push +jobs: + build: + runs-on: ubuntu-latest-16-cores + steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Log into Docker Hub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build for linux/amd64 + uses: docker/build-push-action@v3 + with: + build-args: | + VCS_REF=${{ github.sha }} + load: true + platforms: linux/amd64 + tags: cs50/mysql:amd64 + cache-from: type=registry,ref=cs50/mysql:amd64-buildcache + cache-to: type=registry,ref=cs50/mysql:amd64-buildcache,mode=max + + - name: Push linux/amd64 build to Docker Hub + if: ${{ github.ref == 'refs/heads/main' }} + run: | + docker push cs50/mysql:amd64 + + - name: Build for linux/arm64 + uses: docker/build-push-action@v3 + with: + build-args: | + VCS_REF=${{ github.sha }} + load: true + platforms: linux/arm64 + tags: cs50/mysql:arm64 + cache-from: type=registry,ref=cs50/mysql:arm64-buildcache + cache-to: type=registry,ref=cs50/mysql:arm64-buildcache,mode=max + + - name: Push linux/arm64 build to Docker Hub + if: ${{ github.ref == 'refs/heads/main' }} + run: | + docker push cs50/mysql:arm64 + + - name: Create multi-arch manifest and push to Docker Hub + if: ${{ github.ref == 'refs/heads/main' }} + run: | + docker manifest create cs50/mysql:latest \ + --amend cs50/mysql:amd64 \ + --amend cs50/mysql:arm64 + docker manifest push cs50/mysql:latest diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9f0ec61..0000000 --- a/.travis.yml +++ /dev/null @@ -1,19 +0,0 @@ -sudo: required -services: docker -script: docker build . -t cs50/mysql:${TRAVIS_BRANCH/master/latest} -before_deploy: docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD" -deploy: - provider: script - script: docker push cs50/mysql:${TRAVIS_BRANCH/master/latest} - on: - all_branches: true -after_deploy: | - #!/bin/bash - - if [[ "$TRAVIS_BRANCH" = "master" ]]; then - docker tag cs50/mysql:{latest,5.6} - docker push cs50/mysql:5.6 - fi -notifications: - slack: - secure: Zf9UJkv90hP/obZzweQ73HqtvwKZMiQQpGA1NaYiz2QKEmyZODj13mxts6QSpyuoTlm+/ghyfHjt5i9PQt55xt0wBuOnBr0VFxwC2ygwd2RdMeulaOWI1JwOFZuNh+AQ1aNp4oqge+Cmaxh/RRf6mtTaIPG5xIpANM35cQmwba5ri6ub31qYxDJbx6Jn8tIiggvG+fIP+thudtEtbjONy38Jbupje6tddbIUCB9wdlexrUrjLN59x0Hw5FNbxCoKsIZ71Uq8rxeuxzjqJH76aSScY0PNGraywLuuBn6x/4hfgJBA9iQ6V1a2vsY++oA5o2Aeg9JkWqUZJ3pWnk9LWCpOyscBVK5TJmqM06a36UujJfPmIj6BUCcrBA2yHyPC06jt99LRFipYzNpTdP0+s7JWppPZhjmw8CzUkQ3Z6BFvzlez1kOTZrXkMwaeZdaHa6bjjuJtuhaO33FsEZhKlCTMXlavMRyevs2f8ua1SqIFOl57qTNy6Hy8Kvkba7MgOLxpPhVz0yBvXjm2SRHv/32QTAQFlxalR76Q7IL1AKqwSj8r02JTGvfQ0FaP5+5WQXU6bzkQIKY18qmzwlR9xFxFi7o0pD1/hCVGi8A4XYi7flEyCTK0FKZ+PVxWXC1AAJ4kBfHVP4fY29RtDnIJSanAQi2hbB4qY5LeLYmLQgQ=