diff --git a/.github/actions/checks/action.yml b/.github/actions/checks/action.yml index 0e31d46f..efd205b7 100644 --- a/.github/actions/checks/action.yml +++ b/.github/actions/checks/action.yml @@ -36,9 +36,8 @@ runs: shell: bash run: node scripts/changelog-check.js - # A release must also agree with itself: the newest dated section, the - # package version and the demo pin all name one version, and nothing is left - # under [Unreleased]. + # A release must also agree with itself: the newest dated section and the + # package version name one version, and nothing is left under [Unreleased]. - name: Check the changelog describes this release if: inputs.mode == 'release' shell: bash diff --git a/.github/workflows/release-prep.yml b/.github/workflows/release-prep.yml index 0766c43b..93859f09 100644 --- a/.github/workflows/release-prep.yml +++ b/.github/workflows/release-prep.yml @@ -39,8 +39,7 @@ jobs: with: node-version: '24' - # Dates the section, writes the compare link, bumps api/package.json and - # moves the demo pin in render.yaml. + # Dates the section, writes the compare link and bumps api/package.json. - name: Prepare the release env: VERSION: ${{ inputs.version }} @@ -65,7 +64,7 @@ jobs: git config user.name 'SandObserver' git config user.email '260779319+SandObserver@users.noreply.github.com' git checkout -b "${BRANCH}" - git add CHANGELOG.md api/package.json render.yaml + git add CHANGELOG.md api/package.json git commit -m "Release ${VERSION}" git push "https://x-access-token:${GH_TOKEN}@github.com/${REPO}.git" "HEAD:${BRANCH}" gh pr create \ @@ -77,7 +76,6 @@ jobs: '**Summary**' \ "- Date Unreleased as ${VERSION} and add its compare link." \ "- Bump api/package.json to ${VERSION}." \ - "- Pin the demo image to ${VERSION} in render.yaml." \ '' \ '**Testing**' \ 'The changelog gate ran in release mode before this branch was pushed. Merging this tags the release and publishes the image.' \ diff --git a/README.md b/README.md index 3cdd60e7..10469b86 100644 --- a/README.md +++ b/README.md @@ -19,8 +19,7 @@

Try it: demo.sandobserver.com
-Note: The first demo visit may take up to a minute due to Render's free-tier cold start.
+
Try it: demo.sandobserver.com Most dashboards are a wall of numbers and charts. Stackyard is the opposite: a calm, launcher-style grid of app tiles, folders, and a small number of *genuinely useful* widgets, running in a single container. Built to be glanced at a hundred times a day without feeling cluttered. diff --git a/render.yaml b/render.yaml deleted file mode 100644 index 2cf09d2d..00000000 --- a/render.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Render blueprint for the public demo (https://render.com/docs/blueprint-spec). -# Runs a published release image in demo mode: read-only, bundled sample config, -# no outbound requests. -# -# PORT must be 80. Render routes traffic to whatever PORT says, and nginx is the -# process that serves the dashboard on 80. The API is unaffected: supervisord -# pins PORT=3000 for the API process, and nginx proxies to 127.0.0.1:3000. -services: - - type: web - name: stackyard-demo - runtime: image - plan: free - region: oregon - image: - url: ghcr.io/sandobserver/stackyard:1.18.0 - envVars: - - key: DEMO_MODE - value: "true" - - key: PORT - value: "80" - - key: TRUST_PROXY - value: "true" - healthCheckPath: /health diff --git a/scripts/changelog-check.js b/scripts/changelog-check.js index 339fd00a..103fec82 100644 --- a/scripts/changelog-check.js +++ b/scripts/changelog-check.js @@ -159,8 +159,8 @@ function checkStyle(version) { const short = text => (text.length > 60 ? `${text.slice(0, 57)}...` : text); -/** The release-time half: the changelog, the package version and the demo pin - must all name the same release. */ +/** The release-time half: the changelog and the package version must name the + same release. */ function checkRelease(doc, version) { const releases = cl.released(doc); const newest = releases[0]; @@ -175,12 +175,6 @@ function checkRelease(doc, version) { const pkg = JSON.parse(fs.readFileSync(path.join(ROOT, 'api', 'package.json'), 'utf8')); if (pkg.version !== version) fail(1, `api/package.json is ${pkg.version}, not ${version}`); - const render = fs.readFileSync(path.join(ROOT, 'render.yaml'), 'utf8'); - const pinned = /stackyard:(\S+)/.exec(render); - if (!pinned || pinned[1] !== version) { - fail(1, `render.yaml pins the demo to ${pinned ? pinned[1] : 'nothing'}, not ${version}`); - } - const previous = releases[1]; if (previous && newest) { const implied = cl.impliedBump(newest); diff --git a/scripts/dockerhub-description.js b/scripts/dockerhub-description.js index 9a32785f..adc58716 100644 --- a/scripts/dockerhub-description.js +++ b/scripts/dockerhub-description.js @@ -31,7 +31,6 @@ const HEADER = `# Stackyard  Try it: **[demo.sandobserver.com](https://demo.sandobserver.com)** -The first demo visit may take up to a minute due to Render's free-tier cold start. Documentation: **[stackyard.sandobserver.com/docs](https://stackyard.sandobserver.com/docs/)** diff --git a/scripts/release-prep.js b/scripts/release-prep.js index cd89df45..05676d8f 100644 --- a/scripts/release-prep.js +++ b/scripts/release-prep.js @@ -1,6 +1,6 @@ #!/usr/bin/env node /* Prepares a release: dates the [Unreleased] section, adds its compare link, - bumps api/package.json, and moves the demo image pin in render.yaml. + and bumps api/package.json. Writes files. Run it on a branch, never on the default branch. @@ -61,14 +61,8 @@ function main(argv) { const bumped = pkg.replace(/("version":\s*")[^"]+(")/, `$1${version}$2`); if (bumped === pkg) die(`${pkgPath} has no version field to bump`); - const renderPath = 'render.yaml'; - const render = read(renderPath); - const pinned = render.replace(/(stackyard:)\d+\.\d+\.\d+\S*/, `$1${version}`); - if (pinned === render) die(`${renderPath} does not pin an image tag; the demo would stay on the old release`); - write('CHANGELOG.md', changed.markdown); write(pkgPath, bumped); - write(renderPath, pinned); console.error(`release-prep: ${changed.previous ?? 'first release'} -> ${version} (${date})`); console.log(`version=${version}`); diff --git a/test/repo/release-prep-order.test.js b/test/repo/release-prep-order.test.js index 9eb2bd66..de17ea2e 100644 --- a/test/repo/release-prep-order.test.js +++ b/test/repo/release-prep-order.test.js @@ -37,7 +37,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 @param {string} name @returns {string} absolute path to the copy */ function seededRepo(name) { const dir = path.join(tmpDir(name), 'repo'); - for (const p of ['scripts', 'api/package.json', 'render.yaml']) { + for (const p of ['scripts', 'api/package.json']) { const dst = path.join(dir, p); fs.mkdirSync(path.dirname(dst), { recursive: true }); fs.cpSync(path.join(ROOT, p), dst, { recursive: true });