-
Notifications
You must be signed in to change notification settings - Fork 139
Private custom template #949
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
Comments
Not sure I understand what you are doing here?, which might be the reason that you are encountering issues - if you are trying to bend things that are not intended to be bend, you will encounter issues and you might at some point be broken by changes in AL-Go. |
The security concern is more about the contents of the repo and the supplementary features on GitHub. We could use issues or discussions to talk about internal information of either the company or our clients, and we might add data that shouldn't be publicly accessible. Of course, we wouldn't store tokens, private URLs or anything like that, but I want the template to allow for mentioning something not intended for public, such as referencing a solution in a private repository or incidents. |
I don't understand that. |
Our version had several configurations already set up to ensure new repositories start with important configurations from the start, such as custom rulesets, workspace settings and AL Go settings. You can see the old repository here, in case you're curious. |
@freddydk we've talked about this at the last tech days. Your Idea was to introduce a .al-go repo in an org. This has basicly the same utily as creating private templates. I'm currently trying to centralize configurations and script overrides into one template. I had the same idea to copy the Al-Go-Appsource repo to a private repo in our org and make all the changes I require. So then a common update Cycle would be (Offical Template) <- (Org Template) <- (Repo) There are three things that keep this from working as desired. Firstly only a few files are updated when I think the following files should also be updated: al.code-workspace (only the settings), .github/*Settings.json (everything not just template url).
|
That's how I expected AL Go to work at first. That being said, there's some things to consider here:
|
Workflow and Scripts are already copied from the Template.
This is in theory pretty good. I've created some custom tooling to do that. But in the end its very difficult to find a way that works for everybody. I think the most reasonable solution is to overwrite everything that is present in the template. If you consider the following config:
If you apply the following template
The result should be
This is pretty straight forward to understand and implement. I've you want it all, you probably need to use a transaction log.
|
Since I've had several problems and security concerns using a public fork of
microsoft/AL-Go-PTE
, I've decided to create a new one that would be private. Here's what I did:microsoft/AL-Go-PTE
and modified the repository, adding custom workflows, settings and initial folder structures, simply calledCBS-BC-AT/AL-Go
. That's when I wanted to "unfork" the repo.CBS-BC-AT/AL-Go-Default
, usingCBS-BC-AT/AL-Go
as the template..github/AL-Go-settings.json
, ran the "Update AL-Go System Files" action and merged the PR.CBS-BC-AT/AL-Go
as a template with a link toCBS-BC-AT/AL-Go-Default
instead and ran the "Update AL-Go System Files" action again.But because AL Go is interpreting the new template as an AL Go project rather than a template, I've encountered two problems:
CBS-BC-AT/AL-Go-Default
will trigger the build pipeline without any apps, wasting a lot of runner minutes.I understand why these two occur - the actions are comparing template URLs to determine whether the repo is a template or a copy. I'd just like to be able to use
CBS-BC-AT/AL-Go-Default
as a template for our projects, and use the "Update AL Go System Files" workflow to fetch any updates frommicrosoft/AL-Go-PTE
.Is there a reason why that shouldn't be possible?
The text was updated successfully, but these errors were encountered: