name: Maybe generate docs on: push: branches: - main jobs: docs: name: Generate docs upon new release runs-on: ubuntu-latest container: elixir:1.14-alpine env: FLAVOUR: classic FLAVOUR_PATH: flavours/classic MIX_ENV: dev WITH_DOCKER: no CI: true EXQLITE_USE_SYSTEM: 1 EXQLITE_SYSTEM_CFLAGS: -I/usr/include EXQLITE_SYSTEM_LDFLAGS: -L/lib -lsqlite3 steps: - name: Install bash (needed for just), git (needed for checkout), tar (needed for cache), file (needed for bonfire_files), make/build-base/sqlite/graphviz (for arch), and just run: apk add bash git tar file make build-base sqlite graphviz just - name: Checkout uses: actions/checkout@v2 with: fetch-depth: 2 # needed for action-detect-and-tag-new-version # - # FIXME # name: Detect new version # id: version # uses: salsify/action-detect-and-tag-new-version@v2 # with: # version-command: | # grep -m 1 'version:' mix.exs | cut -d '"' -f2 # - # if: steps.version.outputs.current-version == steps.version.outputs.previous-version # name: Cancel workflow if the version has not changed # uses: andymckay/cancel-action@0.2 - name: Trust my repo run: export GIT_CEILING_DIRECTORIES=/__w && git config --global --add safe.directory /__w/bonfire-app/bonfire-app # see https://github.com/actions/checkout/issues/760 - name: Install hex run: mix local.hex --force - name: Install rebar run: mix local.rebar --force - name: Prepare environment run: just pre-setup && just init - name: Install dependencies run: mix deps.get - name: Generate docs run: just docs # - # name: Generate arch reports # run: just arch && mv reports/dev/static/html ./docs/exdoc/arch - name: Deploy docs uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/exdoc cname: doc.bonfirenetworks.org