1
0
Fork 0
kubernetes/jenkins
Dustin 12d3c32855 jenkins: RBAC for K8s Credentials Provider
The [Kubernetes Credentials Provider][0] plugin for Jenkins allows
Jenkins to expose Kubernetes Secret resources as Jenkins Credentials.
Jobs can use them like normal Jenkins credentials, e.g. using
`withCredentials`, `sshagent`, etc.  The only drawback is that every
credential exposed this way is available to every job, at least until
[PR #40][1] is merged.  Fortunately, jobs managed by this Jenkins
instance are all trusted; no anonymous pull requests are possible, so
the risk is mitigated.

[0]: https://jenkinsci.github.io/kubernetes-credentials-provider-plugin/
[1]: https://github.com/jenkinsci/kubernetes-credentials-provider-plugin/pull/40
2023-11-10 15:27:38 -06:00
..
README.md jenkins: Run Jenkins in Kubernetes 2022-11-25 13:38:10 -06:00
argocd-sync-hook.yaml jenkins: Add Argo CD pre-sync hook 2023-10-22 21:50:25 -05:00
jenkins.yaml jenkins: RBAC for K8s Credentials Provider 2023-11-10 15:27:38 -06:00
kustomization.yaml jenkins: Add default imagePullSecrets for jobs 2023-11-10 15:13:19 -06:00
secrets.yaml jenkins: Add default imagePullSecrets for jobs 2023-11-10 15:13:19 -06:00
ssh_known_hosts jenkins: Add files.p.b SSH host key 2023-11-10 15:17:06 -06:00

README.md

Jenkins in Kubernetes

Kubernetes Setup

Configure Jenkins resources:

ln imagepull-gitea jenkins/.dockerconfigjson
kubectl apply -k jenkins

Jenkins Setup

Install Kubernetes plugin.

Set TCP port for inbound agents setting (Manage JenkinsConfigure Global Security) to Fixed and enter 40414.

Configure Kubernetes (Manage JenkinsManage Nodes and CloudsConfigure Clouds:

  1. Add a new cloudKubernetes
  2. Enter a name
  3. Kubernetes Cloud details...
    • Kubernetes URL: (leave blank; will use Kubernetes service discovery)
    • Kubernetes Namespace: jenkins-jobs
    • Credentials: - none - (will use Service Account token)
    • Jenkins tunnel: jenkins.jenkins.svc.cluster.local: (trailing colon!)