diff --git a/.gitea/workflows/node.yml b/.gitea/workflows/node.yml index 322edaa..c3cf8ff 100644 --- a/.gitea/workflows/node.yml +++ b/.gitea/workflows/node.yml @@ -17,7 +17,7 @@ jobs: - name: Setup Node uses: https://gitea.com/actions/setup-node@v4 with: - node-version: 20 + node-version-file: 'package.json' - name: Install dependencies run: npm ci - name: Lint diff --git a/.gitea/workflows/publish.yml b/.gitea/workflows/publish.yml new file mode 100644 index 0000000..c31deee --- /dev/null +++ b/.gitea/workflows/publish.yml @@ -0,0 +1,42 @@ +name: Publish + +on: + push: + tags: + - 'v*' + +jobs: + tests: + uses: vbrandl/fotochallenge/.gitea/workflows/node.yml@main + + publish: + name: Publishing + needs: [tests] + runs-on: ubuntu-latest + + steps: + - name: Checkout sources + uses: actions/checkout@v3 + + - name: Login to DockerHub + uses: docker/login-action@v2 + with: + registry: git.vbrandl.net + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Get Meta + id: meta + run: | + echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT + echo REPO_VERSION=$(git describe --tags --always | sed 's/^v//') >> $GITHUB_OUTPUT + + - name: Build and push + uses: docker/build-push-action@v4 + with: + context: . + file: ./Containerfile + push: true + tags: | + git.vbrandl.net/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.meta.outputs.REPO_VERSION }} + git.vbrandl.net/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ env.DOCKER_LATEST }} diff --git a/package.json b/package.json index 6f247ef..55d8018 100644 --- a/package.json +++ b/package.json @@ -35,5 +35,8 @@ "bulma": "^1.0.1", "sass": "^1.77.5" }, - "type": "module" + "type": "module", + "engines": { + "node": "20" + } }