Git Product home page Git Product logo

Comments (13)

eldada avatar eldada commented on June 1, 2024 2

For a full CI/CD we'll also need a way to upload to OJO.
We'll need an Artifactory deployer service account with permissions to the helm repo only.
We can manage this account's creds in Jenkins. Along with many other Artifactory service accounts we manage there today.
It will be very easy to use it to upload a packaged helm chart.
Need to pack only after a travisci+kermit flow are passing.
Let me know what you think.

from charts.

rimusz avatar rimusz commented on June 1, 2024 1

we can skip minikube and do all in jenkins, but I like to run it in minikube chart_test.sh --no-install so the linting is done by travisci.
then jenkins with chart_test.sh --no-lint will install/test/remove charts on our k8s cluster

from charts.

rimusz avatar rimusz commented on June 1, 2024

Proposed testing for each PR using TravisCI/Jenkins:
TravisCI

  1. install minikube
  2. run chart_test.sh from https://github.com/helm/chart-testing with lint, which will lint only changed chart/s.

Jenkins

  1. if all above tests get passed then run kermit tests for changed charts.

from charts.

jainishshah17 avatar jainishshah17 commented on June 1, 2024

@rimusz Sounds good!

from charts.

rimusz avatar rimusz commented on June 1, 2024

@eldada can minikube be run in background?
if that is possible then we can use:

$ docker run --rm -v "$(pwd):/workdir" --workdir /workdir gcr.io/kubernetes-charts-ci/chart-testing:v1.0.3 chart_test.sh --config .mikikube_config

Which also then takes care of kubectl and helm clients https://github.com/helm/chart-testing/blob/master/Dockerfile#L45 and https://github.com/helm/chart-testing/blob/master/Dockerfile#L51

from charts.

eldada avatar eldada commented on June 1, 2024

Yes @rimusz . Minikube is run in the background with the --vm-driver=none option. Just needs Docker installed.

from charts.

rimusz avatar rimusz commented on June 1, 2024

no, worries, got all working with TravisCI

from charts.

rimusz avatar rimusz commented on June 1, 2024

Testing for each PR using TravisCI/Jenkins:
TravisCI

  1. install minikube
  2. run chart_test.sh --no-install from https://github.com/helm/chart-testing, which will only lint changed chart/s.
  3. if tests get passed then trigger Jenkins

Jenkins

  1. run jenkins job with chart_test.sh --no-lint from https://github.com/helm/chart-testing, which will only install and test changed chart/s.
  2. run kermit tests for changed charts (replaces test above when all kermit tests are ready to use)
  3. trigger Jenkins job manually to pack and deploy charts to OJO

from charts.

eldada avatar eldada commented on June 1, 2024

@rimusz , if we use --no-install, do we sill need to install minikube?

from charts.

rimusz avatar rimusz commented on June 1, 2024

but if we encounter problems of integrating travisci + jenkins, then we can set chart_test.sh full testing in jenkins only

from charts.

eldada avatar eldada commented on June 1, 2024

Do we still need this open? I think we have a good dev + ci process in place. We should tune it as needed as part of a continuous learning process.

from charts.

rimusz avatar rimusz commented on June 1, 2024

we can close this one

from charts.

jainishshah17 avatar jainishshah17 commented on June 1, 2024

@rimusz @eldada If it's working with forks then we can close this.

from charts.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.