Skip to content

lbrocke/oinit

Repository files navigation

oinit

Certificate-based OpenSSH for Federated Identities

This repository contains a collection of programs to enable OpenSSH login for federated identities based on certificates.

Please refer to the Documentation directory to learn about installation and configuration.


OpenID Connect access token for selected provider is loaded from oidc-agent.

Development

Building:

# Client application
$ make oinit

# oinit-shell and oinit-switch
$ make oinit-shell oinit-switch

# Server application (CA)
$ make oinit-ca

When changing the REST API annotations, run make swagger to generate the Swagger files.

Testing:

# Formating
$ make fmt

# Unit tests
$ make test

# Static analysis
$ make vet
$ make staticcheck # go install honnef.co/go/tools/cmd/staticcheck@latest

Alternatively, run make all-checks to run tests and static analysis.

Branches

Development happens on feature branches checked out from and merged back into prerelease. When ready, commits are merged into main and tagged as release.

Github Actions create new Docker images for GHCR on release. The Gitlab CI runs integration tests and creates Linux packages.

License

This project is licensed under the MIT License.