diff --git a/.github/workflows/generate.yml b/.github/workflows/generate.yml index 3561f3127..a3e9d4f20 100644 --- a/.github/workflows/generate.yml +++ b/.github/workflows/generate.yml @@ -2,26 +2,14 @@ name: "Generate docs/examples" on: push: - branches: - - main - tags: - - v* pull_request: jobs: generate-docs: runs-on: ubuntu-latest + steps: - # Regular (non-PR) checkout - uses: actions/checkout@v4 - if: ${{ github.event_name == 'push' }} - - # Checkout PRs (including from forks) to allow committing doc changes - - uses: actions/checkout@v4 - if: ${{ github.event_name == 'pull_request' }} - with: - repository: ${{ github.event.pull_request.head.repo.full_name }} - ref: ${{ github.event.pull_request.head.ref }} - uses: cachix/install-nix-action@V28 with: @@ -35,6 +23,7 @@ jobs: - name: Generate doc options run: devenv shell devenv-generate-doc-options - uses: EndBug/add-and-commit@v9 + if: ${{ github.event_name == 'push' }} with: default_author: github_actions add: docs/reference/options.md @@ -43,6 +32,7 @@ jobs: - name: Verify individual docs run: devenv shell devenv-verify-individual-docs - uses: EndBug/add-and-commit@v9 + if: ${{ github.event_name == 'push' }} with: default_author: github_actions message: 'Auto generate missing individual markdowns' @@ -53,6 +43,7 @@ jobs: devenv shell devenv-generate-languages-example devenv shell devenv-generate-individual-docs - uses: EndBug/add-and-commit@v9 + if: ${{ github.event_name == 'push' }} with: default_author: github_actions add: docs examples/supported-languages/devenv.nix @@ -61,8 +52,26 @@ jobs: - name: Generate JSON schema run: devenv generate-json-schema - uses: EndBug/add-and-commit@v9 + if: ${{ github.event_name == 'push' }} with: default_author: github_actions add: docs/devenv.schema.json message: 'Auto generate docs/devenv.schema.json' + - name: Check for uncommitted changes + run: | + diff=$(git diff --stat) + if [[ -n "$diff" ]]; then + message="There are uncommitted doc changes in the repository. + + ${diff} + + To resolve this, you can: + a. Run the failing devenv-generate-* commands locally and commit the changes. + b. Let CI auto-commit the changes to your fork of the repo. You may need to enable this workflow on your fork." + + echo "::error::${message//$'\n'/%0A}" + exit 1 + else + echo "No uncommitted doc changes found." + fi diff --git a/docs/reference/options.md b/docs/reference/options.md index e134dc357..fe5ad056b 100644 --- a/docs/reference/options.md +++ b/docs/reference/options.md @@ -35792,7 +35792,7 @@ path *Default:* -` "/home/runner/work/devenv/devenv/.devenv/state/caddy" ` +` "${config.env.DEVENV_STATE}/caddy" ` *Declared by:* - [https://github.com/cachix/devenv/blob/main/src/modules/services/caddy.nix](https://github.com/cachix/devenv/blob/main/src/modules/services/caddy.nix) @@ -40179,7 +40179,7 @@ package *Default:* -` ` +` pkgs.trafficserver ` *Declared by:* - [https://github.com/cachix/devenv/blob/main/src/modules/services/trafficserver](https://github.com/cachix/devenv/blob/main/src/modules/services/trafficserver) @@ -40508,28 +40508,6 @@ File layout used by Traffic Server *Type:* unspecified value *(read only)* - - -*Default:* - -``` -{ - bindir = "/nix/store/p4vjvd38l79jsxzxlv9q2hbajm7g2js9-trafficserver-9.2.3/bin"; - cachedir = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver/cache"; - datadir = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver/share"; - exec_prefix = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver"; - includedir = "/nix/store/p4vjvd38l79jsxzxlv9q2hbajm7g2js9-trafficserver-9.2.3/include"; - libdir = "/nix/store/p4vjvd38l79jsxzxlv9q2hbajm7g2js9-trafficserver-9.2.3/lib"; - libexecdir = "/nix/store/p4vjvd38l79jsxzxlv9q2hbajm7g2js9-trafficserver-9.2.3/libexec"; - localstatedir = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver/state"; - logdir = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver/log"; - prefix = "/home/runner/work/devenv/devenv/.devenv/state/trafficserver"; - runtimedir = "/run/user/1001/devenv-0957646/trafficserver"; - sbindir = "/nix/store/p4vjvd38l79jsxzxlv9q2hbajm7g2js9-trafficserver-9.2.3/bin"; - sysconfdir = ; -} -``` - *Declared by:* - [https://github.com/cachix/devenv/blob/main/src/modules/services/trafficserver](https://github.com/cachix/devenv/blob/main/src/modules/services/trafficserver) @@ -40656,7 +40634,7 @@ strings concatenated with ā€œ\\nā€ *Default:* -` "/home/runner/work/devenv/devenv/.devenv/state/trafficserver/cache 256M" ` +` "${config.services.traffic-server.runroot.cachedir} 256M" ` diff --git a/docs/supported-services/caddy.md b/docs/supported-services/caddy.md index 6e6596994..d734ff5db 100644 --- a/docs/supported-services/caddy.md +++ b/docs/supported-services/caddy.md @@ -153,7 +153,7 @@ path *Default:* -` "/home/runner/work/devenv/devenv/.devenv/state/caddy" ` +` "${config.env.DEVENV_STATE}/caddy" ` diff --git a/src/modules/services/caddy.nix b/src/modules/services/caddy.nix index 8bdb5434a..790aecf89 100644 --- a/src/modules/services/caddy.nix +++ b/src/modules/services/caddy.nix @@ -168,7 +168,7 @@ in dataDir = mkOption { default = "${config.env.DEVENV_STATE}/caddy"; - defaultText = literalExpression ''"${config.env.DEVENV_STATE}/caddy"''; + defaultText = literalExpression "\"\${config.env.DEVENV_STATE}/caddy\""; type = types.path; description = '' The data directory, for storing certificates. Before 17.09, this diff --git a/src/modules/services/trafficserver/default.nix b/src/modules/services/trafficserver/default.nix index e700da07c..dd27e284b 100644 --- a/src/modules/services/trafficserver/default.nix +++ b/src/modules/services/trafficserver/default.nix @@ -95,12 +95,12 @@ in package = lib.mkOption { type = types.package; default = pkgs.trafficserver; + defaultText = lib.literalExpression "pkgs.trafficserver"; description = "Apache Traffic Server package"; }; runroot = lib.mkOption { readOnly = true; - default = runroot; description = "File layout used by Traffic Server"; }; @@ -298,6 +298,7 @@ in storage = lib.mkOption { type = types.lines; default = "${runroot.cachedir} 256M"; + defaultText = lib.literalExpression "\"\${config.services.traffic-server.runroot.cachedir} 256M\""; example = "/dev/disk/by-id/XXXXX volume=1"; description = '' List all the storage that make up the Traffic Server cache. @@ -358,5 +359,7 @@ in services.trafficserver.records.proxy.config.body_factory.template_sets_dir = lib.mkDefault "${cfg.package}/etc/trafficserver/body_factory"; + + services.trafficserver.runroot = runroot; }; }