diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index c766c188..b8321754 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -21,10 +21,12 @@ ARG VARIANT=hugo # VERSION can be either 'latest' or a specific version number ARG VERSION=latest -# Download Hugo +# Download Hugo Dependencies RUN apt-get update && apt-get install -y ca-certificates openssl git curl golang python-is-python3 && \ - rm -rf /var/lib/apt/lists/* && \ - case ${VERSION} in \ + rm -rf /var/lib/apt/lists/* + +# Download Hugo +RUN case ${VERSION} in \ latest) \ export VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') ;;\ esac && \ @@ -35,7 +37,7 @@ RUN apt-get update && apt-get install -y ca-certificates openssl git curl golang *) \ export ARCH=64bit ;; \ esac && \ - echo Wanted Architecture is ${ARCH} && \ + echo Hugo architecture identifier is ${ARCH} && \ wget -O ${VERSION}.tar.gz https://github.com/gohugoio/hugo/releases/download/v${VERSION}/${VARIANT}_${VERSION}_Linux-${ARCH}.tar.gz && \ tar xf ${VERSION}.tar.gz && \ mv hugo /usr/bin/hugo diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 86837cc6..2fb49535 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -41,5 +41,7 @@ "remoteUser": "node", // Use 'postCreateCommand' to run commands after the container is created. "postCreateCommand": ".devcontainer/scripts/postCreateCommand.sh", - "postStartCommand": "hugo server -b http://localhost/velocitas -w" + // Hugo needs to run in the background as otherwise postStartCommand will never finish + // + "postStartCommand": "nohup bash -c 'hugo server -b http://localhost/velocitas -w &'" } diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 84728160..22e99786 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,6 +17,8 @@ name: CI workflow on: workflow_dispatch: push: + branches: + - "main" pull_request: jobs: @@ -33,10 +35,14 @@ jobs: hugo-version: "0.123.3" extended: true - - name: Verify that devcontainer works - run: | - cd .devcontainer - docker buildx build -f Dockerfile -t test:latest . + - name: Build devcontainer and run automated tests + uses: devcontainers/ci@v0.3 + with: + runCmd: | + # Give some time for server to come up + sleep 20 + # Do a sanity check that the server has started and says something about eclipse + curl http://localhost:1313/velocitas/docs/about/ | grep -e eclipse - name: Build run: | @@ -57,11 +63,10 @@ jobs: echo -e "\`\`\`" >> $GITHUB_STEP_SUMMARY - name: Publish to GH Pages - # Note that gh_pages isnt published to https://eclipse-velocitas.github.io/velocitas-docs/ + # Note that gh_pages isn't published to https://eclipse-velocitas.github.io/velocitas-docs/ # or the alias https://eclipse.dev/velocitas/ # So this basically just check if there are errors :-) - # Only publish to gh_pages if this was a push to master - if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} + if: ${{ github.event_name == 'push'}} uses: peaceiris/actions-gh-pages@v4.0.0 with: github_token: ${{ secrets.GITHUB_TOKEN }}