Skip to content

Kong/go-apiops

Folders and files

NameName
Last commit message
Last commit date
Jun 21, 2024
Apr 8, 2023
Jul 13, 2024
Jan 8, 2024
Jan 22, 2024
Nov 29, 2023
Mar 26, 2024
Jan 22, 2024
Apr 10, 2025
Aug 22, 2024
May 9, 2025
Aug 22, 2024
Jul 12, 2023
Jul 6, 2023
Aug 22, 2024
Feb 21, 2023
Oct 27, 2023
Apr 10, 2025
Jul 12, 2023
Jan 19, 2024
Oct 27, 2023
Sep 8, 2023
Feb 6, 2025
Feb 6, 2025
Jan 19, 2024

Repository files navigation

go-apiops

Home of Kong's Go based APIOps library.

Build Status Lint Status codecov Go Report Card SemVer License

What is APIOps

API Lifecycle Automation, or APIOps, is the process of applying API best practices via automation frameworks. This library contains functions to aid the development of tools to apply APIOps to Kong Gateway deployments.

See the Kong Blog for more information on APIOps concepts.

What is this library?

The go-apiops library provides a set of tools (generation and transformation) for working with API specifications and Kong Gateway declarative configurations. Conceptually, these tools are intended to be organized into a pipeline of individual steps configured for a particular users needs. The overall purpose of the library is to enable users to build a CI/CD workflow which deliver APIs from specification to deployment. This pipeline design allows users to customize the delivery of APIs based on their specific needs.

What is the current status of this library?

The library is an Apache 2.0 license. The library functionality will be be made available through the deck cli tool.

Installation & Usage

Currently, the functionality is released as a library and as part of the decK CLI tool. The repository also contains a CLI named go-apiops for local testing. For general CLI usage, the decK tool should be used.

Local Build

  • make sure Go-lang tools are installed
  • Checkout the Git repository (switch to a specific tag to select a version if required)
  • use the makefile to build the project via make build

Reporting issues

Issues using the go-apiops CLI or the library can be reported in the Github repo.

Releasing new versions

The releases are automated. To create a new release:

  • tag at the desired place to release

    git tag vX.Y.Z
  • push the tag and CI will create a new release

    git push vX.Y.Z
  • verify the release on the releases page, possibly edit the release-notes (which will be generated from the commit history)