An open source maven/npm/pypi package manager.
Warning: This is a work in progress and not ready for production use.
We wanted to publish our packages to import them between our projects easily. But we also wanted them to be private and not available to the public. Since GitHub does not support python packages, other solutions were very costly, and we love to make open source software, we decided to create our own package manager!
Using the Gradle plugin:
plugins {
id("digital.guimauve.pkg") version "0.1.3"
}
repositories {
pkg(project) // Default https://pkg.guimauve.digital/maven2 repository
pkg(project, url = "...") // Custom repository URL
}Note: If you run this repository locally, you need to add isAllowInsecureProtocol = true to allow http.
In your .npmrc:
@organization-name:registry=https://pkg.guimauve.digital/npm/In your pip.conf (to download packages):
[global]
extra-index-url = https://pkg.guimauve.digital/pypi/simpleIn your ~/.pypirc (to publish packages):
[guimauve-digital]
repository = https://pkg.guimauve.digital/pypi/The easiest way to deploy an instance is using Helm on Kubernetes.
Create a values.yaml file with the following content (replace with the desired values):
replicaCount: 2
ingress:
hosts:
- host: pkg.guimauve.digital
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: guimauvedigital-tls
hosts:
- pkg.guimauve.digital
jwt:
secret: 'secret'
s3:
id: ''
key: ''
region: 'eu-west-3'
name: 'guimauve-pkg'And then, install it:
helm install pkg path-to-repo/helm/pkg -f values.yamlAnd you can access it with the chosen domain!