Kong / Kong/kongctl

feat(ci): install packaged GitHub Actions workflows in customer projects

Open
#2,175 1 comment 1 reaction 0 assignees View on GitHub
declarative enhancement github_actions triaged
Dominant language
Go
Stars
17
Forks
24
Avg merge
8h 13m
Merged PRs (30d)
196

Description

## Problem

Customers need an easy starting point for running kongctl in CI/CD. Existing
examples and guidance still leave users assembling their own workflow. The
immediate user request is simple: install kongctl in CI and run a plan.

## Proposal

Add a command that installs packaged GitHub Actions workflows into a customer
project, starting with one basic plan workflow. For example:

```sh
kongctl install workflows
```

The command name is provisional. Align it with the broader generation proposal
in #486 during implementation; this issue tracks a small initial deliverable
from that broader idea.

Install an editable workflow file under the project's `.github/workflows/`
directory. Package the initial template with kongctl and leave room to add more
workflow templates later.

## Initial scope

- Provide one reference workflow that checks out the customer repository,
installs kongctl, authenticates to Konnect using a GitHub Actions secret,
and runs `kongctl plan` against the project's declarative configuration.
- Use pull requests as the initial CI trigger, with manual execution available
for getting started and verification.
- Let users specify the declarative configuration path and document the
required secret and any other setup. Make the kongctl version used by the
workflow explicit and easy to change.
- Write the workflow locally so users can review, customize, and commit it.
Report the generated path and remaining setup steps.
- Preserve existing files: repeated installation must not silently overwrite
a customer's workflow.

## Acceptance criteria

- A user can install the packaged workflow into a local project with a single
command, then configure the documented secret and configuration path.
- The generated workflow installs kongctl and successfully runs a plan for a
valid configuration; installation or planning failures fail the CI job.
- Plan output is available in the workflow run for inspection.
- The initial workflow does not execute `apply` or `sync`.
- Documentation includes a minimal end-to-end getting-started example.
- Tests cover command behavior, workflow generation, and existing-file handling;
the generated workflow is validated.

## Follow-up scope

Additional templates can address plan review and approval, apply on merge,
sync versus apply, multiple environments, and single-repo, multi-repo, or
federated setups. Those choices should not expand this first iteration into a
universal CI/CD solution.

Related: #486 (broader declarative configuration and workflow generation).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at the CLI command entry point and the project’s workflow packaging and generation paths; compare the proposed command with the broader generation work in #486. Add coverage for command behavior, workflow validation, generation, and existing-file handling, then verify that the documented end-to-end setup produces a failing-on-error plan workflow without apply or sync.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, go
Domain
ci-cd, cli, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.