name: Docker image on: push: branches: - next tags: - v* env: IMAGE_NAME: skytable BUILD: "false" jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: fetch-depth: 2 - name: Setup environment run: | chmod +x ci/buildvars.sh ci/buildvars.sh - uses: actions-rs/toolchain@v1 with: toolchain: stable - name: build uses: actions-rs/cargo@v1 with: command: build args: --release - name: Build image run: docker build . --file Dockerfile --tag $IMAGE_NAME:${{ github.ref == 'refs/heads/next' && 'next' || github.ref_name }} if: github.ref == 'refs/heads/next' || startsWith(github.ref, 'refs/tags/v') - name: Set Tags id: set_tags run: | TAGS="" if [ "${{ github.ref }}" == "refs/heads/next" ]; then TAGS="next" fi if [[ "${{ github.ref }}" == refs/tags/v* ]]; then TAGS="${TAGS:+$TAGS,}${GITHUB_REF#refs/tags/}" TAGS="${TAGS:+$TAGS,}latest" fi echo "::set-output name=tags::$TAGS" - name: Push to Docker Hub uses: docker/build-push-action@v1 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} repository: skytable/skytable tags: ${{ steps.set_tags.outputs.tags }} if: github.ref == 'refs/heads/next' || startsWith(github.ref, 'refs/tags/v')