diff options
Diffstat (limited to 'src/ext_depends/d2sqlite3/.github/workflows')
-rw-r--r-- | src/ext_depends/d2sqlite3/.github/workflows/documentation.yaml | 58 | ||||
-rw-r--r-- | src/ext_depends/d2sqlite3/.github/workflows/main.yaml | 61 |
2 files changed, 61 insertions, 58 deletions
diff --git a/src/ext_depends/d2sqlite3/.github/workflows/documentation.yaml b/src/ext_depends/d2sqlite3/.github/workflows/documentation.yaml new file mode 100644 index 0000000..97fa25e --- /dev/null +++ b/src/ext_depends/d2sqlite3/.github/workflows/documentation.yaml @@ -0,0 +1,58 @@ +# Documentation build: Only runs on Linux +# Still need to install dependencies and the compiler because DDOX +# does a full build +name: Documentation +on: [push, pull_request] + +jobs: + doc: + name: Build and upload documentation + runs-on: ubuntu-latest + timeout-minutes: 30 + steps: + + # Checkout this repository and its submodules + - name: Checkout repository + uses: actions/checkout@v2 + + # Install the D compiler + - name: Prepare compiler + uses: dlang-community/setup-dlang@v1 + with: + compiler: ldc-latest + + - name: 'Install dependencies & setup environment' + run: | + sudo apt-get update + sudo apt-get install libsqlite3-dev + + - name: Build documentation + run: | + dub build -b ddox + # Generate the HTML to docs + dub run ddox -- generate-html docs.json ./docs/ + + - name: Upload documentation artifact + uses: actions/upload-artifact@v2 + with: + name: documentation + path: docs/ + + - name: Deploy documentation + if: github.event_name == 'push' + run: | + # Remove gh-branch if it already exists, check it out + git branch -D gh-pages || true + git checkout --orphan gh-pages + # Remove all staged files - We only need the docs + git rm -rf $(git ls-files) + # We can have some leftover files (e.g. build) + # So add docs (which is only what we need), then `git mv` it. + git add docs/ + git mv -k docs/* ./ + # Configure user (because persist-credentials does not persist everything...) + git config --global user.name "${{ github.actor }}" + git config --global user.email "${{ github.actor }}@users.noreply.github.com" + # We're done + git commit -m "Documentation for commit ${{ github.sha }}" + git push -f ${{ github.event.repository.clone_url }} gh-pages:gh-pages diff --git a/src/ext_depends/d2sqlite3/.github/workflows/main.yaml b/src/ext_depends/d2sqlite3/.github/workflows/main.yaml index 103d945..28eaebe 100644 --- a/src/ext_depends/d2sqlite3/.github/workflows/main.yaml +++ b/src/ext_depends/d2sqlite3/.github/workflows/main.yaml @@ -15,8 +15,9 @@ jobs: # TODO: FIXME. Requires fixes to the dub.sdl to work on Windows # os: [ ubuntu-18.04, macOS-10.15, windows-2019 ] os: [ ubuntu-18.04, macOS-10.15 ] - # Oldest supported FE is 2.088.1 because older DMD don't work on macOS-10.15 - dc: [ ldc-master, ldc-latest, ldc-1.21.0, dmd-master, dmd-latest, dmd-2.088.1 ] + # Oldest supported FE is 2.090.1 because we need `GC.inFinalizer` + # https://dlang.org/changelog/2.090.0.html + dc: [ ldc-master, ldc-latest, ldc-1.21.0, dmd-master, dmd-latest, dmd-2.090.1 ] runs-on: ${{ matrix.os }} timeout-minutes: 30 @@ -69,59 +70,3 @@ jobs: run: | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" dub test -c ci - - # Documentation build: Only runs on Linux - # Still need to install dependencies and the compiler because DDOX - # does a full build - doc: - name: Build and upload documentation - needs: main - runs-on: ubuntu-latest - timeout-minutes: 30 - steps: - - # Checkout this repository and its submodules - - name: Checkout repository - uses: actions/checkout@v2 - - # Install the D compiler - - name: Prepare compiler - uses: dlang-community/setup-dlang@v1 - with: - compiler: ldc-latest - - - name: 'Install dependencies & setup environment' - run: | - sudo apt-get update - sudo apt-get install libsqlite3-dev - - - name: Build documentation - run: | - dub build -b ddox - # Generate the HTML to docs - dub run ddox -- generate-html docs.json ./docs/ - - - name: Upload documentation artifact - uses: actions/upload-artifact@v2 - with: - name: documentation - path: docs/ - - - name: Deploy documentation - if: github.event_name == 'push' - run: | - # Remove gh-branch if it already exists, check it out - git branch -D gh-pages || true - git checkout --orphan gh-pages - # Remove all staged files - We only need the docs - git rm -rf $(git ls-files) - # We can have some leftover files (e.g. build) - # So add docs (which is only what we need), then `git mv` it. - git add docs/ - git mv -k docs/* ./ - # Configure user (because persist-credentials does not persist everything...) - git config --global user.name "${{ github.actor }}" - git config --global user.email "${{ github.actor }}@users.noreply.github.com" - # We're done - git commit -m "Documentation for commit ${{ github.sha }}" - git push -f ${{ github.event.repository.clone_url }} gh-pages:gh-pages |