How to do proper CI/CD with artifact promotion with GitHub Actions.

This page summarizes the projects mentioned and recommended in the original post on /r/devops

SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • semantic-release

    :package::rocket: Fully automated version management and package publishing

  • Then, I have a separate "Release" workflow, which is triggered manually using "workflow_dispatch" on the main branch. This workflow fetches the previously built Docker image. (using the branch name as the tag) and runs Semantic Release which creates a GitHub release, based on the commit messages and pushes a new image with the final tag to GCR.

  • release-drafter

    Drafts your next release notes as pull requests are merged into master.

  • I am thinking I would have to create a GitHub release manually and then have a workflow listening on the "Release created" event, which would pull the image with the correct commit sha, tag it with the proper version and push it. Or using something like Release Drafter with a PR-based Git flow.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • docs

    Packagr is a series of small, language-agnostic, dependency-free, composable tools that let you package and release artifacts and libraries written in any language. (by PackagrIO)

  • Curious if something like https://github.com/PackagrIO/docs would work for your flow.

  • CapsuleCD

    Discontinued Continuous Delivery for automating package releases (npm, cookbooks, gems, pip, jars, etc)

  • Packagr is based off of one of my earlier tools https://github.com/AnalogJ/capsulecd which did this whole flow end to end automatically, but was pretty opinionated, and inflexible. Packagr is setup as a series of small composable tools, which you can integrate with your existing build/test tools & scrips

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Generate semantic-release with GitHub Actions

    4 projects | dev.to | 4 Feb 2021
  • Pipelight: Tiny Automation Pipelines

    1 project | news.ycombinator.com | 26 Jan 2024
  • Pipelight – An uncomplicated automation tool made with Rust for 2024

    1 project | news.ycombinator.com | 24 Jan 2024
  • Azure pipelines vs GitHub actions

    1 project | /r/devops | 6 Dec 2023
  • what’s your current side project teaching you?

    1 project | /r/SideProject | 5 Dec 2023