Expose a public Go library API for `gh-actions-lock`

Ouverte
#279 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
go
Domaine
api, cli

Piste de recherche

Start by reading the CLI's core implementation under internal/ and trace how it performs locking, relocking, verification, and inspection. Then assess how those operations could be exposed as a typed, context-aware API without requiring gh; done means external Go applications can call the proposed operations through a public package such as pkg/actionslock.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Motivation

gh-actions-lock keeps its core functionality under internal/, forcing external Go applications to invoke the CLI instead of using a type-safe Go API.

Proposal

Expose a public Go package, such as pkg/actionslock, providing typed, context-aware APIs for locking, relocking, verification, and inspection, while reusing the CLI's core implementation without requiring gh.

Usage

Verify a repository directly from Go using an illustrative API:

import "github.com/github/gh-actions-lock/pkg/actionslock"

result, err := actionslock.Verify(ctx, actionslock.Options{RepositoryRoot: "."})
Langage dominant
Go
Étoiles
317
Forks
24
Merge moyen
1 j 8 h
PR mergées (30 j)
50

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de github/gh-actions-lock

Toutes les issues de github/gh-actions-lock

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.