dotCMS / dotCMS/core

Add minstarter.dotcms.com to Publish Starter workflow and Slack app launcher

Open
#35,227 0 comments 0 reactions 1 assignee View on GitHub

@dcolina is already working on this.

Since Apr 7, 2026.

Priority : 3 Average Team : Platform
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

Description

The Publish Starter workflow (cicd_manual_publish-starter.yml) currently supports two starter types: full (fullstarter.dotcms.com) and empty. Two improvements are requested:

  1. Mini Starter integration: Add minstarter.dotcms.com as a new starter type that follows the same download-and-publish flow currently used for the full starter.
  2. Slack launcher: Provide a Slack-based trigger (slash command or interactive shortcut) so the team can kick off the starter generation workflow directly from Slack, without needing to navigate to GitHub Actions UI.

Acceptance Criteria

Server Setup (minstarter.dotcms.com)
  • minstarter.dotcms.com is whitelisted to allow outbound access from the CI/CD runner to the server's API
  • A dotCMS Access Key is generated on minstarter.dotcms.com with the minimum permissions required to call the api/v1/maintenance/_downloadStarterWithAssets endpoint
  • The generated Access Key is stored as a repository secret (DOT_MINI_STARTER_ACCESS_TOKEN) in the starter environment and documented accordingly
Mini Starter Workflow
  • A new mini option is added to the type input of the workflow_dispatch event in cicd_manual_publish-starter.yml
  • A new repository variable (DOT_MINI_STARTER_URL) is defined for the starter environment pointing to minstarter.dotcms.com
  • The get-starter job downloads the artifact from minstarter.dotcms.com using the same endpoint and curl logic as the full starter
  • The downloaded zip is uploaded to Artifactory under the correct path and with the appropriate naming convention
  • The Slack notification in send-notification includes the mini starter type in its message
Slack Launcher
  • A Slack slash command or interactive shortcut is available for team members to trigger the Publish Starter workflow
  • The launcher exposes the same inputs as the workflow_dispatch event: type (full, empty, mini), old-assets flag, changelog description, issue number, and dry-run toggle
  • The Slack trigger dispatches the GitHub Actions workflow via the GitHub API (repository dispatch or workflow_dispatch REST call)
  • The launcher is restricted to authorized users/channels to prevent accidental triggers
  • A confirmation message is posted in Slack after the workflow is successfully dispatched, including a link to the GitHub Actions run

Additional Notes

  • Reference workflow: .github/workflows/cicd_manual_publish-starter.yml
  • The mini starter must mirror the full starter flow exactly — no custom post-processing unless explicitly requested
  • The dotCMS Access Key must be generated directly on minstarter.dotcms.com (not shared with other environments)
  • Slack bot/app credentials must be stored as GitHub/environment secrets and not hardcoded

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.