kopia lustrzana https://github.com/simonw/datasette
Ability to deploy demos of branches
* Ability to deploy additional branch demos, closes #1442 * Only run tests before deploy on main branch * Documentation for continuous deploymentpull/1447/head
rodzic
adb5b70de5
commit
d84e574e59
|
@ -29,6 +29,7 @@ jobs:
|
|||
python -m pip install -e .[docs]
|
||||
python -m pip install sphinx-to-sqlite==0.1a1
|
||||
- name: Run tests
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
run: |
|
||||
pytest -n auto -m "not serial"
|
||||
pytest -m "serial"
|
||||
|
@ -50,6 +51,8 @@ jobs:
|
|||
run: |-
|
||||
gcloud config set run/region us-central1
|
||||
gcloud config set project datasette-222320
|
||||
export SUFFIX="-${GITHUB_REF#refs/heads/}"
|
||||
export SUFFIX=${SUFFIX#-main}
|
||||
datasette publish cloudrun fixtures.db extra_database.db \
|
||||
-m fixtures.json \
|
||||
--plugins-dir=plugins \
|
||||
|
@ -57,7 +60,10 @@ jobs:
|
|||
--version-note=$GITHUB_SHA \
|
||||
--extra-options="--setting template_debug 1 --setting trace_debug 1 --crossdb" \
|
||||
--install=pysqlite3-binary \
|
||||
--service=datasette-latest
|
||||
--service "datasette-latest$SUFFIX"
|
||||
- name: Deploy to docs as well (only for main)
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
run: |-
|
||||
# Deploy docs.db to a different service
|
||||
datasette publish cloudrun docs.db \
|
||||
--branch=$GITHUB_SHA \
|
||||
|
|
|
@ -202,6 +202,17 @@ For added productivity, you can use use `sphinx-autobuild <https://pypi.org/proj
|
|||
|
||||
Now browse to ``http://localhost:8000/`` to view the documentation. Any edits you make should be instantly reflected in your browser.
|
||||
|
||||
.. _contributing_continuous_deployment:
|
||||
|
||||
Continuously deployed demo instances
|
||||
------------------------------------
|
||||
|
||||
The demo instance at `latest.datasette.io <https://latest.datasette.io/>`__ is re-deployed automatically to Google Cloud Run for every push to ``main`` that passes the test suite. This is implemented by the GitHub Actions workflow at `.github/workflows/deploy-latest.yml <https://github.com/simonw/datasette/blob/main/.github/workflows/deploy-latest.yml>`__.
|
||||
|
||||
Specific branches can also be set to automatically deploy by adding them to the ``on: push: branches`` block at the top of the workflow YAML file. Branches configured in this way will be deployed to a new Cloud Run service whether or not their tests pass.
|
||||
|
||||
The Cloud Run URL for a branch demo can be found in the GitHub Actions logs.
|
||||
|
||||
.. _contributing_release:
|
||||
|
||||
Release process
|
||||
|
|
Ładowanie…
Reference in New Issue