id,seq,job,repo,uses,name,with,run,env,if 138751,2,27846,197882382,actions/setup-python@v2,Set up Python,"{""python-version"": ""3.9""}",,, 138752,3,27846,197882382,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-publish-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-publish-pip-\n""}",,, 138753,4,27846,197882382,,Install dependencies,,"pip install setuptools wheel twine ",, 138754,5,27846,197882382,,Publish,,"python setup.py sdist bdist_wheel twine upload dist/* ","{""TWINE_USERNAME"": ""__token__"", ""TWINE_PASSWORD"": ""${{ secrets.PYPI_TOKEN }}""}", 138755,1,27847,197882382,actions/checkout@v2,,,,, 138756,2,27847,197882382,actions/setup-python@v2,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}""}",,, 138757,3,27847,197882382,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138758,4,27847,197882382,,Install dependencies,,"pip install -e '.[test]' ",, 138759,5,27847,197882382,,Run tests,,"pytest ",, 138760,1,27848,213286752,actions/checkout@v3,,,,, 138761,2,27848,213286752,actions/setup-python@v4,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}"", ""cache"": ""pip"", ""cache-dependency-path"": ""pyproject.toml""}",,, 138762,3,27848,213286752,,Install dependencies,,"pip install '.[test]' ",, 138763,4,27848,213286752,,Run tests,,"pytest ",, 138764,1,27849,213286752,actions/checkout@v3,,,,, 138765,2,27849,213286752,actions/setup-python@v4,Set up Python,"{""python-version"": ""3.11"", ""cache"": ""pip"", ""cache-dependency-path"": ""pyproject.toml""}",,, 138766,3,27849,213286752,,Install dependencies,,"pip install setuptools wheel twine build ",, 138767,4,27849,213286752,,Publish,,"python -m build twine upload dist/* ","{""TWINE_USERNAME"": ""__token__"", ""TWINE_PASSWORD"": ""${{ secrets.PYPI_TOKEN }}""}", 138768,1,27850,213286752,actions/checkout@v3,,,,, 138769,2,27850,213286752,actions/setup-python@v4,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}"", ""cache"": ""pip"", ""cache-dependency-path"": ""pyproject.toml""}",,, 138770,3,27850,213286752,,Install dependencies,,"pip install '.[test]' ",, 138771,4,27850,213286752,,Run tests,,"pytest ",, 138772,1,27851,205429375,actions/checkout@v3,,,,, 138773,2,27851,205429375,actions/setup-python@v4,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}"", ""cache"": ""pip"", ""cache-dependency-path"": ""setup.py""}",,, 138774,3,27851,205429375,,Install dependencies,,"pip install -e '.[test]' ",, 138775,4,27851,205429375,,Run tests,,"pytest ",, 138776,1,27852,205429375,actions/checkout@v3,,,,, 138777,2,27852,205429375,actions/setup-python@v4,Set up Python,"{""python-version"": ""3.11"", ""cache"": ""pip"", ""cache-dependency-path"": ""setup.py""}",,, 138778,3,27852,205429375,,Install dependencies,,"pip install setuptools wheel twine ",, 138779,4,27852,205429375,,Publish,,"python setup.py sdist bdist_wheel twine upload dist/* ","{""TWINE_USERNAME"": ""__token__"", ""TWINE_PASSWORD"": ""${{ secrets.PYPI_TOKEN }}""}", 138780,1,27853,205429375,actions/checkout@v3,,,,, 138781,2,27853,205429375,actions/setup-python@v4,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}"", ""cache"": ""pip"", ""cache-dependency-path"": ""setup.py""}",,, 138782,3,27853,205429375,,Install dependencies,,"pip install -e '.[test]' ",, 138783,4,27853,205429375,,Run tests,,"pytest ",, 138784,1,27854,206156866,actions/checkout@v2,,,,, 138785,2,27854,206156866,actions/setup-python@v2,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}""}",,, 138786,3,27854,206156866,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138787,4,27854,206156866,,Install dependencies,,"pip install -e '.[test]' ",, 138788,5,27854,206156866,,Run tests,,"pytest ",, 138789,1,27855,206156866,actions/checkout@v2,,,,, 138790,2,27855,206156866,actions/setup-python@v2,Set up Python,"{""python-version"": ""3.9""}",,, 138791,3,27855,206156866,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-publish-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-publish-pip-\n""}",,, 138792,4,27855,206156866,,Install dependencies,,"pip install setuptools wheel twine ",, 138793,5,27855,206156866,,Publish,,"python setup.py sdist bdist_wheel twine upload dist/* ","{""TWINE_USERNAME"": ""__token__"", ""TWINE_PASSWORD"": ""${{ secrets.PYPI_TOKEN }}""}", 138794,1,27856,206156866,actions/checkout@v2,Check out repo,,,, 138795,2,27856,206156866,,Update TOC,,npx markdown-toc README.md -i,, 138796,3,27856,206156866,,Commit and push if README changed,,"git diff git config --global user.email ""readme-bot@example.com"" git config --global user.name ""README-bot"" git diff --quiet || (git add README.md && git commit -m ""Updated README"") git push",, 138797,1,27857,206156866,actions/checkout@v2,,,,, 138798,2,27857,206156866,actions/setup-python@v2,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}""}",,, 138799,3,27857,206156866,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138800,4,27857,206156866,,Install dependencies,,"pip install -e '.[test]' ",, 138801,5,27857,206156866,,Run tests,,"pytest ",, 138802,1,27858,107914493,actions/checkout@v3,,,,, 138803,2,27858,107914493,actions/setup-python@v4,Set up Python 3.11,"{""python-version"": ""3.11""}",,, 138804,3,27858,107914493,,Install dependencies,,"pip install datasette-publish-vercel ",, 138805,4,27858,107914493,,Deploy the preview,,"export BRANCH=""${{ github.event.inputs.branch }}"" wget https://latest.datasette.io/fixtures.db datasette publish vercel fixtures.db \ --branch $BRANCH \ --project ""datasette-preview-$BRANCH"" \ --token $VERCEL_TOKEN \ --scope datasette \ --about ""Preview of $BRANCH"" \ --about_url ""https://github.com/simonw/datasette/tree/$BRANCH"" ","{""VERCEL_TOKEN"": ""${{ secrets.BRANCH_PREVIEW_VERCEL_TOKEN }}""}", 138806,1,27859,107914493,actions/checkout@v3,Check out datasette,,,, 138807,2,27859,107914493,actions/setup-python@v4,Set up Python,"{""python-version"": ""3.9""}",,, 138808,3,27859,107914493,actions/cache@v3,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138809,4,27859,107914493,,Install Python dependencies,,"python -m pip install --upgrade pip python -m pip install -e .[test] python -m pip install -e .[docs] python -m pip install sphinx-to-sqlite==0.1a1 ",, 138810,5,27859,107914493,,Run tests,,"pytest -n auto -m ""not serial"" pytest -m ""serial"" ",,${{ github.ref == 'refs/heads/main' }} 138811,6,27859,107914493,,Build fixtures.db and other files needed to deploy the demo,,"python tests/fixtures.py \ fixtures.db \ fixtures-config.json \ fixtures-metadata.json \ plugins \ --extra-db-filename extra_database.db",, 138812,7,27859,107914493,,Build docs.db,,"cd docs DISABLE_SPHINX_INLINE_TABS=1 sphinx-build -b xml . _build sphinx-to-sqlite ../docs.db _build cd ..",,${{ github.ref == 'refs/heads/main' }} 138813,8,27859,107914493,,Set up the alternate-route demo,,"echo ' from datasette import hookimpl @hookimpl def startup(datasette): db = datasette.get_database(""fixtures2"") db.route = ""alternative-route"" ' > plugins/alternative_route.py cp fixtures.db fixtures2.db ",, 138814,9,27859,107914493,,And the counters writable canned query demo,,"cat > plugins/counters.py <=0.2.2' \ --service ""datasette-latest$SUFFIX"" \ --secret $LATEST_DATASETTE_SECRET","{""LATEST_DATASETTE_SECRET"": ""${{ secrets.LATEST_DATASETTE_SECRET }}""}", 138817,12,27859,107914493,,Deploy to docs as well (only for main),,"# Deploy docs.db to a different service datasette publish cloudrun docs.db \ --branch=$GITHUB_SHA \ --version-note=$GITHUB_SHA \ --extra-options=""--setting template_debug 1"" \ --service=datasette-docs-latest",,${{ github.ref == 'refs/heads/main' }} 138818,1,27860,107914493,readthedocs/actions/preview@v1,,"{""project-slug"": ""datasette""}",,, 138819,1,27861,107914493,actions/checkout@v2,Check out repo,,,, 138820,2,27861,107914493,actions/cache@v2,Configure npm caching,"{""path"": ""~/.npm"", ""key"": ""${{ runner.OS }}-npm-${{ hashFiles('**/package-lock.json') }}"", ""restore-keys"": ""${{ runner.OS }}-npm-\n""}",,, 138821,3,27861,107914493,,Install dependencies,,npm ci,, 138822,4,27861,107914493,,Run prettier,,npm run prettier -- --check,, 138823,1,27862,107914493,actions/checkout@v3,,,,, 138824,2,27862,107914493,actions/setup-python@v4,Set up Python ${{ matrix.python-version }},"{""python-version"": ""${{ matrix.python-version }}""}",,, 138825,3,27862,107914493,actions/cache@v3,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138826,4,27862,107914493,,Install dependencies,,"pip install -e '.[test]' ",, 138827,5,27862,107914493,,Run tests,,"pytest ",, 138828,1,27863,107914493,actions/checkout@v3,,,,, 138829,2,27863,107914493,actions/setup-python@v4,Set up Python,"{""python-version"": ""3.11""}",,, 138830,3,27863,107914493,actions/cache@v3,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-publish-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-publish-pip-\n""}",,, 138831,4,27863,107914493,,Install dependencies,,"pip install setuptools wheel twine ",, 138832,5,27863,107914493,,Publish,,"python setup.py sdist bdist_wheel twine upload dist/* ","{""TWINE_USERNAME"": ""__token__"", ""TWINE_PASSWORD"": ""${{ secrets.PYPI_TOKEN }}""}", 138833,1,27864,107914493,actions/checkout@v2,,,,, 138834,2,27864,107914493,actions/setup-python@v2,Set up Python,"{""python-version"": ""3.9""}",,, 138835,3,27864,107914493,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-publish-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-publish-pip-\n""}",,, 138836,4,27864,107914493,,Install dependencies,,"python -m pip install -e .[docs] python -m pip install sphinx-to-sqlite==0.1a1 ",, 138837,5,27864,107914493,,Build docs.db,,"cd docs DISABLE_SPHINX_INLINE_TABS=1 sphinx-build -b xml . _build sphinx-to-sqlite ../docs.db _build cd ..",, 138838,6,27864,107914493,google-github-actions/setup-gcloud@v0,Set up Cloud Run,"{""version"": ""318.0.0"", ""service_account_email"": ""${{ secrets.GCP_SA_EMAIL }}"", ""service_account_key"": ""${{ secrets.GCP_SA_KEY }}""}",,, 138839,7,27864,107914493,,Deploy stable-docs.datasette.io to Cloud Run,,"gcloud config set run/region us-central1 gcloud config set project datasette-222320 datasette publish cloudrun docs.db \ --service=datasette-docs-stable",, 138840,1,27865,107914493,actions/checkout@v2,,,,, 138841,2,27865,107914493,,Build and push to Docker Hub,,"sleep 60 # Give PyPI time to make the new release available docker login -u $DOCKER_USER -p $DOCKER_PASS export REPO=datasetteproject/datasette docker build -f Dockerfile \ -t $REPO:${GITHUB_REF#refs/tags/} \ --build-arg VERSION=${GITHUB_REF#refs/tags/} . docker tag $REPO:${GITHUB_REF#refs/tags/} $REPO:latest docker push $REPO:${GITHUB_REF#refs/tags/} docker push $REPO:latest","{""DOCKER_USER"": ""${{ secrets.DOCKER_USER }}"", ""DOCKER_PASS"": ""${{ secrets.DOCKER_PASS }}""}", 138842,1,27866,107914493,actions/checkout@v2,,,,, 138843,2,27866,107914493,,Build and push to Docker Hub,,"docker login -u $DOCKER_USER -p $DOCKER_PASS export REPO=datasetteproject/datasette docker build -f Dockerfile \ -t $REPO:${VERSION_TAG} \ --build-arg VERSION=${VERSION_TAG} . docker push $REPO:${VERSION_TAG}","{""DOCKER_USER"": ""${{ secrets.DOCKER_USER }}"", ""DOCKER_PASS"": ""${{ secrets.DOCKER_PASS }}"", ""VERSION_TAG"": ""${{ github.event.inputs.version_tag }}""}", 138844,1,27867,107914493,actions/checkout@v4,,,,, 138845,2,27867,107914493,actions/setup-python@v4,Set up Python,"{""python-version"": ""3.11"", ""cache"": ""pip"", ""cache-dependency-path"": ""**/setup.py""}",,, 138846,3,27867,107914493,,Install dependencies,,"pip install -e '.[docs]' ",, 138847,4,27867,107914493,,Check spelling,,"codespell README.md --ignore-words docs/codespell-ignore-words.txt codespell docs/*.rst --ignore-words docs/codespell-ignore-words.txt codespell datasette -S datasette/static --ignore-words docs/codespell-ignore-words.txt ",, 138848,1,27868,107914493,actions/checkout@v2,Check out datasette,,,, 138849,2,27868,107914493,actions/setup-python@v2,Set up Python,"{""python-version"": 3.9}",,, 138850,3,27868,107914493,actions/cache@v2,Configure pip caching,"{""path"": ""~/.cache/pip"", ""key"": ""${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}"", ""restore-keys"": ""${{ runner.os }}-pip-\n""}",,, 138851,4,27868,107914493,,Install Python dependencies,,"python -m pip install --upgrade pip python -m pip install -e .[test] python -m pip install pytest-cov ",,