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

Fork Upbound build submodule #1583

Closed
negz opened this issue Jun 2, 2020 · 9 comments · Fixed by #1865, crossplane/build#1, #5693, upbound/build#259 or crossplane/crossplane-runtime#693
Closed
Labels
build enhancement New feature or request help wanted Extra attention is needed
Projects
Milestone

Comments

@negz
Copy link
Member

negz commented Jun 2, 2020

What problem are you facing?

Edit: Upbound decided to fork the Upbound build submodule. So internal Upbound projects are moving away from it (mostly to a fork, for now). This means there's nothing blocking us from moving (or forking) the submodule to the Crossplane org, to make it clear that it's only used by Crossplane now.

In addition to moving/forking it, I'd like to do a pass over it and remove anything that we know we don't use.


Currently Crossplane relies on a CI/CD system that could be opaque to community members who do not work for Upbound.

  • The majority of repos under the crossplane org use a git submodule of Make libraries that lives under the upbound org. This submodule is also use by several private repositories inside Upbound. This makes it difficult for community members to update, because their updates must account for potential impact on projects they could not possibly be aware of.
  • The build submodule is invoked by a Jenkins instance hosted at https://jenkinsci.upbound.io/. While this instance has some level of GitHub integration (i.e. GitHub org members may login and run and restart builds) it is hosted and administered by Upbound employees.

How could Crossplane help solve your problem?

At a minimum we should ensure Crossplane's CI/CD system is associated with "Crossplane" rather than "Upbound". This would involve forking the build submodule to github.com/crossplane/build, and hosting Jenkins at https://jenkins.crossplane.io.

We may consider taking this a step further and replacing Jenkins with GitHub Actions. This "GitHub native" CI/CD system may be less opaque to community members, and integrate more tightly with GitHub's native permissions model.

@negz negz added the enhancement New feature or request label Jun 2, 2020
@negz
Copy link
Member Author

negz commented Jun 2, 2020

https://crossplane.github.io/docs/master/release/release-process.html

Note that Jenkins (somewhat) automates the above release process for Crossplane, and any proposal to change to a different CI/CD system will need to account for automating Crossplane releases (i.e. tagging, Cross compiling, and publishing artifacts).

@negz negz added this to To do - Proposed in v0.12 via automation Jun 2, 2020
@negz
Copy link
Member Author

negz commented Jun 30, 2020

Not strictly related to CI/CD openness, but if we do move to Github actions it would be good to replace our previous configuration that added comments to PRs for linter violations per #1411.

@negz negz reopened this Nov 10, 2020
@negz negz changed the title Increase CI/CD openness Fork Upbound build submodule Nov 10, 2020
@negz
Copy link
Member Author

negz commented Nov 10, 2020

We're now using GitHub Actions which has made a big difference, but the Upbound build submodule being used internally still means it's hard for folks who don't work for Upbound to understand the blast radius of their changes to the build submodule.

@stale
Copy link

stale bot commented Aug 14, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Aug 14, 2022
@jeanduplessis
Copy link
Contributor

I'm re-opening this issue for further consideration

@jeanduplessis jeanduplessis reopened this Jul 6, 2023
@github-actions
Copy link

github-actions bot commented Oct 5, 2023

Crossplane does not currently have enough maintainers to address every issue and pull request. This issue has been automatically marked as stale because it has had no activity in the last 90 days. It will be closed in 14 days if no further activity occurs. Leaving a comment starting with /fresh will mark this issue as not stale.

@github-actions github-actions bot added the stale label Oct 5, 2023
@turkenh
Copy link
Member

turkenh commented Oct 5, 2023

/fresh

@github-actions github-actions bot removed the stale label Oct 5, 2023
@jeanduplessis jeanduplessis added this to the v1.15 milestone Oct 9, 2023
Copy link

github-actions bot commented Jan 8, 2024

Crossplane does not currently have enough maintainers to address every issue and pull request. This issue has been automatically marked as stale because it has had no activity in the last 90 days. It will be closed in 14 days if no further activity occurs. Leaving a comment starting with /fresh will mark this issue as not stale.

@github-actions github-actions bot added the stale label Jan 8, 2024
@negz
Copy link
Member Author

negz commented Jan 8, 2024

/fresh

I'm pretty sure Upbound decided to fork the Upbound build submodule. So internal Upbound projects are moving away from it (mostly to a fork, for now). I still think it would be worth forking it under the Crossplane org to clarify that it's a "Crossplane thing", that we could optimize for use only by Crossplane projects.

@github-actions github-actions bot removed the stale label Jan 8, 2024
@jbw976 jbw976 removed this from the v1.15 milestone Jan 24, 2024
@negz negz added the help wanted Extra attention is needed label Apr 4, 2024
@turkenh turkenh removed their assignment Apr 4, 2024
@jbw976 jbw976 added this to the v1.17 milestone May 15, 2024
negz added a commit to negz/upjet-provider-template that referenced this issue May 30, 2024
negz added a commit to negz/upjet-provider-template that referenced this issue May 30, 2024
negz added a commit to negz/upjet-provider-template that referenced this issue May 30, 2024
negz added a commit to negz/upjet-provider-template that referenced this issue May 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment