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

publish pipeline to push the Helm Chart to an external repository #8

Closed
Tracked by #3
imgios opened this issue Apr 9, 2024 · 5 comments · Fixed by #35
Closed
Tracked by #3

publish pipeline to push the Helm Chart to an external repository #8

imgios opened this issue Apr 9, 2024 · 5 comments · Fixed by #35
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers keep open Issue or pull request that must not be closed by Stale bot
Milestone

Comments

@imgios
Copy link
Collaborator

imgios commented Apr 9, 2024

Description

Would be good to have a pipeline useful to push each Helm Chart release to an external repository.

Solution you'd like

GitHub pipeline that executes a given set of commands to build the package and push it to an external repository for each commit (e.g. merge a PRs) done on main branch, taking the Chart version from the Chart.yaml:

version: 1.0.0

@imgios imgios mentioned this issue Apr 9, 2024
3 tasks
@imgios imgios added enhancement New feature or request needs triage This issue may need triage. Remove it if it has been sufficiently triaged labels Apr 9, 2024
@fonzdm
Copy link
Owner

fonzdm commented Apr 20, 2024

Mmh, @imgios, I was thinking about are devops master @lucaam for this... 👀

@fonzdm fonzdm added the good first issue Good for newcomers label Apr 20, 2024
@lucaam lucaam self-assigned this Apr 24, 2024
@lucaam
Copy link
Collaborator

lucaam commented Apr 24, 2024

Mmh, @imgios, I was thinking about are devops master @lucaam for this... 👀

Challenge accepted ✅

lucaam added a commit that referenced this issue Apr 24, 2024
lucaam added a commit that referenced this issue Apr 24, 2024
lucaam added a commit that referenced this issue Apr 24, 2024
lucaam added a commit that referenced this issue Apr 24, 2024
lucaam added a commit that referenced this issue Apr 24, 2024
lucaam added a commit that referenced this issue Apr 24, 2024
@imgios
Copy link
Collaborator Author

imgios commented Apr 24, 2024

Hi @fonzdm / @lucaam,
I think there is a major question to address before starting with the implementation:

Where do we want to publish the Helm Chart?

I think that we can leverage on ArtifactHub (tldr: the Helm official Repository) to spread the Chart around and make it easily accessible. This can also increase the chance of it getting found from new user. Moreover, we can also leverage to the GitHub Pages to make a "backup" or secondary repository.

In details, my proposal is to have one publish pipeline that is triggered for each commit on the main branch, composed of two jobs:

  • publish-artifacthub will be responsible to publish the Helm Chart on ArtifactHub
  • publish-pages will be responsible to:
    • Take the Chart from the main branch
    • Move it in a subdirectory named charts
    • Add an index.yml file in the root
    • (optional) Add the robots.txt
    • Deploy the new structure directly on GitHub Pages without using any additional branch

This solution leverages on both GitHub Pages and ArtifactHub, and ease us from managing additional branches.

What do you think?

@fonzdm
Copy link
Owner

fonzdm commented May 7, 2024

Hi @fonzdm / @lucaam, I think there is a major question to address before starting with the implementation:

Where do we want to publish the Helm Chart?

Since most subcharts we are using as dependencies for Servarr are available and downloaded from ArtifactHub, I would go there as the main repo.

I think that we can leverage on ArtifactHub (tldr: the Helm official Repository) to spread the Chart around and make it easily accessible. This can also increase the chance of it getting found from new user. Moreover, we can also leverage to the GitHub Pages to make a "backup" or secondary repository.

I like this approach, especially because we put all the "packaging and publishing" logic into the pipelines and we do not rely on additional branches to maintain. Anyway, I would focus more on publishing to ArtifactHub and then check if Github Pages are a useful place for us 😄

@lucaam do not panic, @imgios will handle the PR from now on.

@fonzdm fonzdm removed the needs triage This issue may need triage. Remove it if it has been sufficiently triaged label May 7, 2024
@imgios imgios added this to the first release milestone May 9, 2024
@imgios imgios added the keep open Issue or pull request that must not be closed by Stale bot label May 9, 2024
@mrgionsi mrgionsi assigned mrgionsi and unassigned lucaam May 9, 2024
@fonzdm fonzdm linked a pull request May 9, 2024 that will close this issue
2 tasks
@imgios
Copy link
Collaborator Author

imgios commented May 9, 2024

Done in #35

@imgios imgios closed this as completed May 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers keep open Issue or pull request that must not be closed by Stale bot
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants