minio-brigade is a Brigade Project that utilizes Minio.
This Project was designed to show a Brigade Job generating data files (e.g. unit test results and code coverage), sharing the files in the Brigade Project Shared PVC, and finally persisting the data in an object storage service using a Minio-JS client.
- Have a running Kubernetes environment
- Setup Helm - this assumes Helm on your Host regardless of the Helm container used later on.
- (optional) an NFS Provisioner - my environment uses Kubernetes clusters running on standalone bare metal machines. Recommended simple NFS Provisioner is IlyaSemenov/nfs-provisioner-chart. Follow the instructions for adding the helm repo. At install set this as the default Provisioner:
$ helm install --name nfs-provisioner --namespace nfs-provisioner nfs-provisioner/nfs-provisioner --set defaultClass=trueIf not already set up on your host, add nfs-common
$ apt-get install nfs-commonFollow the quick-start guide:
Install Brigade into your Kubernetes cluster is to install it using Helm.
$ helm repo add brigade https://azure.github.io/brigade
$ helm install -n brigade brigade/brigadeTo manually run Brigade Projects the brig binary is required. Follow the Developers Guide to build the binary. Assuming Brigade is cloned and prerequisites met, simply run:
$ make brigTest brig with brig version
Clone minio-brigade and change directory
$ git clone https://github.com/lukepatrick/minio-brigade
$ cd minio-brigadeHelm install minio-brigade
note the name and namespace can be customized
$ helm install --name minio-brigade brigade/brigade-project -f minio-brigade.yamlOptionally to allow GitHub webhooks, install your project with these set commands:
$ helm install --name minio-brigade brigade/brigade-project /
-f minio-brigade.yaml /
--set sharedSecret=secret_string_for_webhook /
--set github.token=github_oauth_token$ kubectl apply -f minio-deployment/minio-deployment.yamlManually run the project. The project name is the same as the project value in the minio-brigade.yaml
$ brig run lukepatrick/minio-brigadeI've used this as a webhook demo for my org. If you skip the manual run with brig the build won't log to your console. To get the details of your webhook build:
$ brig build listNote the ID of the most recent TYPE push from PROVIDER github
$ brig build get {id}Get the worker ID (pod id) and then the kubernetes logs:
$ kubectl logs brigade-worker-01c4From here you can grab any Job pod ID's and get kubernetes logs for those if needed.
PRs accepted.
MIT