Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make EXAMPLE presets be legitimate starting points #142

Closed
7 tasks done
apolopena opened this issue May 22, 2021 · 0 comments
Closed
7 tasks done

Make EXAMPLE presets be legitimate starting points #142

apolopena opened this issue May 22, 2021 · 0 comments
Assignees
Labels
enhancement New feature or request passed-dev-qa Optional state. Use this when QAing other peoples fixes in another branch.ready to be merged to main

Comments

@apolopena
Copy link
Owner

apolopena commented May 22, 2021

Problem this feature will solve

Workspace EXAMPLES require hand configuration of .gp/bash/init-project.sh in order to work on subsequent initializations, once initial scaffolding files have been saved to the repository. EXAMPLES should be stand-alone starting points once initial scaffolding files have been saved to the repository, meaning they should not require alteration of gitpod-laravel-starter internal bash scripts to properly initialize.

In other words:
Workspace urls successfully initialized with an EXAMPLE env variable passed in will not configure properly once initial scaffolding files have been saved to version control and a new workspace is initialized from that repository.

Background

.gp/bash/project-init.sh handles project specific initialization routines.

Proposed Solution

Ensure that examples initialize themselves from .gp/bash/project-init.sh rather than from it's .gp/bash/examples<init example script>.sh file.
.gp/bash/examples<init example script>.sh should really only download and untar the archive for project specfic files of that particular example.

A legitimate starting point will properly initialize itself after initial project scaffolding files have been saved to the repository.

  • Ensure that EXAMPLE 1 and EXAMPLE 2 follows the proposed solution
  • QA EXAMPLE 1 and EXAMPLE 2 in their own repository to make sure that they are legitimate starting points.
  • Ensure that EXAMPLE 3 and EXAMPLE 4 follow the proposed solution
  • QA EXAMPLE 3 and EXAMPLE 4 in their own repository to make sure that they are legitimate starting points.
  • Ensure that EXAMPLE 10 and EXAMPLE 11 follow the proposed solution
  • QA EXAMPLE 10 and EXAMPLE 11 in their own repository to make sure that they are legitimate starting points.
  • Update README.md with information and any caveats in regard to using an EXAMPLE as a starting point.

Constraints and Assumptions

  • There should be a separate repository and tag for each set of files for any particular EXAMPLE.
  • Each EXAMPLE repository should contain a project specific .gp/bash/init-project.sh file.
  • Each gp/bash/examples.shmust untar it's archive using the--overwrite` option.
  • Once initial scaffolding is saved to the repository, ANY installation set by starter.ini (such as phpmyadmin) except the front end scaffolding to use (React, Vue, Bootstrap) will be installed. Note that this may differ from the original EXAMPLE. It is up to the user to set their starter.ini how they want it. In other words, an EXAMPLE will not supercede starter.ini once initial scaffolding files have been saved to the repository.

Alternatives or Workarounds

Not recommended:
Configure a particular EXAMPLE to be persistant once initial scaffolding files are in VCS by hacking and slashing the internal bash scripts of gitpod-laravel-starter

@apolopena apolopena added the enhancement New feature or request label May 22, 2021
@apolopena apolopena self-assigned this May 22, 2021
@apolopena apolopena changed the title Configure EXAMPLE presets to be legitimate starting points Make EXAMPLE presets be legitimate starting points May 22, 2021
apolopena added a commit that referenced this issue May 22, 2021
apolopena added a commit that referenced this issue May 22, 2021
apolopena added a commit that referenced this issue May 22, 2021
apolopena added a commit that referenced this issue May 22, 2021
apolopena added a commit that referenced this issue May 22, 2021
@apolopena apolopena added passed-dev-qa Optional state. Use this when QAing other peoples fixes in another branch.ready to be merged to main and removed in-dev-qa labels May 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request passed-dev-qa Optional state. Use this when QAing other peoples fixes in another branch.ready to be merged to main
Projects
None yet
Development

No branches or pull requests

1 participant