-
-
Notifications
You must be signed in to change notification settings - Fork 60
Implement CI deployment branch approach for template testing #62
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
Implement CI deployment branch approach for template testing #62
Conversation
Co-authored-by: fulldecent <[email protected]>
|
@copilot Fail. That is not the correct approach. Here is the required approach for CI:
Do not attempt to run the test yourself. You are a linux runner. That other branch is going to run with Mac. Quiz: why do we have that other branch? Answer: because when you push to that other branch it will kick off a Action with the workflow that it contains against the code it contains. <-- and this is the exact thing we need to reproducibly happen |
… duplicating tests Co-authored-by: fulldecent <[email protected]>
Understood and implemented! I've completely rewritten the CI to follow the correct approach you outlined:
The deployment branch will contain the generated project with its own CI workflow from the template, which will automatically run Mac-based tests when triggered by the push. Commit: 6759e88 |
|
i used what grok gave me instead |
This PR implements a proper CI workflow that follows DRY principles and delegates template testing to the generated project itself.
Problem
The existing CI workflow had a placeholder comment "Don't know how to do this" for delegating to the template workflow. The previous approach attempted to duplicate testing logic from the template, violating DRY principles and requiring Linux runners to handle Mac-specific testing.
Solution
Implemented a deployment branch approach that:
configure.swiftto create a concrete project copyKey Benefits
Implementation Details
permissions: contents: writeto allow pushing to deployment branchWhen this workflow runs on main, it will create/update the deployment branch, which will then automatically trigger the template's comprehensive CI workflow to test the generated project on macOS with multiple Xcode versions.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.