diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml new file mode 100644 index 0000000..6de0118 --- /dev/null +++ b/.github/workflows/workflow.yml @@ -0,0 +1,51 @@ +name: Docker NodeJS Images GitHub workflow + +on: + pull_request: + branches: + - 'master' + push: + branches: + - 'master' + schedule: + - cron: '43 4 * * 0' + +jobs: + build_test_maybe_release: + strategy: + matrix: + include: + - variant: '6' + - variant: '8' + - variant: '10' + - variant: '12' + - variant: '14' + - variant: '6-apache' + - variant: '8-apache' + - variant: '10-apache' + - variant: '12-apache' + - variant: '14-apache' + runs-on: ubuntu-latest + steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - uses: actions/checkout@v1 + - name: Build and test + run: | + BRANCH="master" VARIANT="${{ matrix.variant }}" ./build-and-test.sh + docker images | grep thecodingmachine/nodejs + - name: Login to DockerHub + # Merge ~ push. + if: ${{ github.event_name == 'push' || github.event_name == 'schedule' }} + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Release + # Merge ~ push. + if: ${{ github.event_name == 'push' || github.event_name == 'schedule' }} + run: | + docker push thecodingmachine/nodejs:${{ matrix.variant}} + docker tag thecodingmachine/nodejs:${{ matrix.variant }} diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 394c52a..0000000 --- a/.travis.yml +++ /dev/null @@ -1,23 +0,0 @@ -sudo: required -language: generic -services: -- docker -env: - global: - - secure: tdW4pFc6oXXAa6FiCxcBkFP0qnm6Hr2z++S3Cf1uQ8Y0lmC05c4d+QQJwVHodpGOTWdWlrXu/N4sVnptoNuCKsjs80DoP+THqSkwnYeJ26+EthexyrWzU6RvGHY/aDLdKK0S1x5czACMwOpnfVnd/UJ3Lz2il5vaMOkRd0za0eSD4UZtxtbsqW2i5qgbcWRoyeyXTogGsVQ8cDIYxAhw0MuycQHNgEPt8FRA+gb+cdX0/ddDPRgy8/jIF14EBTLKiycERF5BBVx7pDScfs3ydTY/wYrlfC2B9JaC52fmd5QMIhAGzL7Mva4c7Z+GCE5xqcQDq2l0TsBrvEwIT/oPPY1kiaoUfaPg1HS0VRcE/dJ/XlMSVc2coSBDrnp1HxNy/uNS+zmJvAzc9Bb+QAb66WeULgnfTTjbUWhmfzvl1cFsfZRENH6oiLKiQY0L7b8pwg+lDHNeykblbDmTwEL3Didgwft+9du0AA+7bJaPGDZ8NnFHk++8QyeQ+liS7sP8dTZVgI9jYf+/byPN4P+MZgiEpqo6BP7GI8trpACHlXf1dMqcmBLOBuKirDcNEZKsPbRjSz8RIiXei1MJhTsjciLwTUlD+yVTehXQiMbsi6oX7CZHEtVclwRtw6z/LkEw9tQF9fr+PhsZukUeqrXXa7XxlmtyPh5RKCJ/DwV7rEU= - - secure: lT5jmrY9u9+aOGC9IUp3Q9oYUcB+5KFhbFagWXlhIfEg9k4PxiFX3F/OrQp3rWTGNxNAc9TMp2p6EGOfr1ffIh/F8ww5F9KZ4wY2v4UIKZ52aVnyDGiN15VYmwjKIQHhG1yvADIRqw3MHiefQVR9WCfqhoMhdyH/QrDLDx8oHko4bCO4xVj9TxdQFIlsqO8LLgh60RpusE6qUxPAdW4mDZjURtd+f5S7SVijoGPj8DdR4YehPzjJfetKjrOFqf+MvTcP6nCBcuptF3x0ifj0kZxMGcGwt9cj0cpwY54Saj+GzFw2t6acYzBhG8kyPkt1a+4pio9XOgReByGGepj9dY7NJwPGgtPNF9X9JSB0P/eVND+pm95+qyqM6++70pioDQKxFZWRGY/+mHPoVK+ay/4QKXdELqA3p/CzpWSS2r5vkvPjS5FfQvi9nfyp6MDKddrcYJSOik6c0tDmmg4N3s37NyK8ayeMV3aSfSqFj5eacnBORyonLdy6aSJNz5atwtJxFu82LSOk+6QkQx9V4WCUaMVaLenT31rIRCqJb3dZrNGeL1voox+8SLLDlSe37vvyYe58VujCDxnVmz91VsWCUEDJQVFGQlMFXDzYnv7VnaaRylFHtgc4znVkumd+L4uAsJkXheerS1eccUsA7oaSC4TAnIYiLHOfz/hbEek= - matrix: - - VARIANT="6" - - VARIANT="8" - - VARIANT="10" - - VARIANT="12" - - VARIANT="14" - - VARIANT="6-apache" - - VARIANT="8-apache" - - VARIANT="10-apache" - - VARIANT="12-apache" - - VARIANT="14-apache" -script: -- BRANCH=$TRAVIS_BRANCH VARIANT=${VARIANT} ./build-and-test.sh -# Let's push only if not in a pull request and the branch matches the master format -- if [[ "$TRAVIS_PULL_REQUEST" = false && "$TRAVIS_BRANCH" = "master" ]] ; then docker login -u $DOCKER_USER -p $DOCKER_PASS && docker push thecodingmachine/nodejs:${VARIANT}; fi