Skip to content

Latest commit

 

History

History
95 lines (62 loc) · 3.01 KB

CONTRIBUTING.md

File metadata and controls

95 lines (62 loc) · 3.01 KB

Contributing

About how to write registry.yaml, please see Registry Configuration.

OSS Contribution Guide

Please read the following document.

Should you create an Issue before sending a Pull Request?

Basically, you don't have to create an Issue before sending a Pull Request. But if the pull request requires the discussion before reviewing, you have to create an Issue in advance.

For example, you don't have to create an Issue in the following cases.

  • Add a package
  • Fix a typo

On the other hand, for example if you want to change the directory structure in pkgs or the workflow adding a package, you have to create an Issue and describe what is changed and why the change is needed.

Requirements

Set up

Checkout the repository and install aqua-registry CLI.

$ git checkout https://github.com/aquaproj/aqua-registry
$ cd aqua-registry
$ aqua i -l # Install aqua-registry CLI

How to add packages

  1. Scaffold configuration: aqua-registry scaffold <package name>
  2. Fix generated files if the scaffold fails
  3. Update registry.yaml: aqua-registry gr
  4. Test: aqua i and run installed tools
  5. Repeat the step 2 ~ 4 until packages are installed properly
  6. Create a pull request: aqua-registry create-pr-new-pkg <package name>...

⚠️ Don't run scaffold command against the same package at multiple times.

⚠️ When you update pkgs/**/registry.yaml, you have to run aqua-registry gr to reflect the update to registry.yaml on the repository root directory.

Style Guide

https://aquaproj.github.io/docs/reference/registry-style-guide

Supported OS and CPU Architecture

Please consider the following OS and CPU Architecture.

  • OS
    • windows
    • darwin
    • linux
  • CPU Architecture
    • amd64
    • arm64

We test the registry in CI on the above environments by GitHub Actions' build matrix.

Test multiple versions

If the package has the field version_overrides, please add not only the latest version but also old versions in pkg.yaml to test if old versions can be installed properly.

e.g. pkg.yaml registry.yaml

packages:
  - name: scaleway/scaleway-cli@v2.6.1
  - name: scaleway/scaleway-cli
    version: v2.4.0

⚠️ Don't use the short syntax <package name>@<version> for the old version to prevent Renovate from updating the old version.

👎

packages:
  - name: scaleway/scaleway-cli@v2.6.1
  - name: scaleway/scaleway-cli@v2.6.1

Change GOOS and GOARCH for testing

Please see https://aquaproj.github.io/docs/reference/change-os-arch-for-test