WIP: Proposal for syncing to FOSS repo with single codebase
What does this MR do?
This is a proposal for syncing from a single repository to a FOSS repository which will contain no proprietary code.
Few proposed design choices:
- Use HTTPS operations to avoid dealing with SSH keys
- Remove .git directory when syncing to the FOSS repository to avoid having proprietary code in history
- All commits in the FOSS repository would be done by a bot, with a commit message containing a timestamp
- Run the job in master only, in the prepare stage to have a somewhat close feedback cycle in cases when the FOSS repository builds fail.
Part of https://gitlab.com/gitlab-org/gitlab-ee/issues/10768
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation created/updated or follow-up review issue created -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Performance and testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team