Integrate custom starter download functionality from script into core codebase
@dcolina is already working on this.
Since Jan 15, 2025.
- Dominant language
- Java
- Stars
- 970
- Forks
- 486
- Avg merge
- 3d 33m
- Merged PRs (30d)
- 170
Description
Parent Issue
No parent issue identified.
User Story
As a developer, I want the functionality implemented in the script 40-custom-starter-zip.sh (downloading the custom starter) to be moved into the core codebase. This includes both the download process and the handling of the ZIP file, ensuring that the functionality is integrated into core rather than existing as a separate script.
Problem Statement
The script /srv/40-custom-starter-zip.sh currently implements the following functionality:
- If
$CUSTOM_STARTER_URLis set, it usescurlto download the custom starter from the URL to/data/shared/custom_starter.zip. - Sets the
DOT_STARTER_DATA_LOADvariable to the ZIP file's path. - Logs the message "Using default starter" to the console if no custom starter is provided.
While functional, this process exists outside the core codebase and should be embedded into the core to streamline handling and caching of the custom starter.
Acceptance Criteria
- Migrate the functionality of
40-custom-starter-zip.shinto the core codebase. - Ensure that:
$CUSTOM_STARTER_URLis properly handled within core.- The custom starter ZIP file is downloaded and cached correctly.
- The
DOT_STARTER_DATA_LOADvariable is set appropriately. - Proper logging is implemented when no custom starter is provided.
- Validate that the new implementation matches the behavior of the existing script.
Proposed Objective
Core Features
Proposed Priority
Priority 2 - Important
dotCMS Version
Applicable to the current implementation.
External Links... Slack Conversations, Support Tickets, Figma Designs, etc.
No external links provided.
Assumptions & Initiation Needs
- The existing functionality in
40-custom-starter-zip.shis the definitive reference for expected behavior. - The new implementation in core should maintain the same logic and outcomes as the script.
Quality Assurance Notes & Workarounds
- Test scenarios where
$CUSTOM_STARTER_URLis set, not set, or invalid to ensure robust handling. - Validate logging outputs for both custom and default starter cases.
- Verify that the ZIP file is correctly downloaded and processed in all relevant workflows.
Sub-Tasks & Estimates
- Migrate the
40-custom-starter-zip.shfunctionality into the core codebase. - Implement handling and caching of the custom starter ZIP within core.
- Test the new implementation to ensure it matches the script's functionality.
- Update documentation and remove references to
40-custom-starter-zip.shwhere applicable.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.