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