Я пытаюсь запустить простой конвейер jenkins для проекта Maven. Когда я пытаюсь запустить его на Jenkins, я получаю следующую ошибку:
ОШИБКА: узел не является узлом Kubernetes:
Я искал все, что связано с этой ошибкой, но ничего не нашел.
Может кто-нибудь сказать мне, где я делаю ошибку?
Дженкинсфайл:
pipeline {
agent {
kubernetes {
cloud 'openshift'
label 'test'
yamlFile 'jenkins/BuildPod.yaml'
}
}
stages {
stage('Build stage') {
steps {
sh 'mvn -B clean verify'
}
}
stage('Test stage') {
steps {
sh 'mvn test'
}
}
stage('Package stage') {
steps {
sh 'mvn package'
}
}
}
}
BuildPod.yaml:
kind: Pod
apiVersion: v1
metadata:
name: test
labels:
app: test
spec:
containers:
- name: jnlp
image: openshift/jenkins-slave-base-centos7:latest
envFrom:
- configMapRef:
name: jenkins-config
- name: oc-dev
image: reliefmelone/ocalpine-os:latest
tty: true
command:
- cat
- name: maven
image: maven:3.6.1-jdk-13
tty: true
command:
- cat
- name: jdk
image: 13-jdk-alpine
tty: true
command:
- cat
Я просто хочу построить свой проект сейчас. Но это не работает.
@hariK Нет... это выдало мне ошибку -- WorkflowScript: 6: неожиданный токен: по умолчанию @ строка 6, столбец 13. по умолчанию 'jnlp'
извинения. Так должно быть defaultContainer 'jnlp'
@hariK.. это началось снова.. что я сделал, так это просто уменьшил его и снова увеличил..
Вам не хватает container
в сценическом шаге.
Пример:
stage('Build stage') {
steps {
container('maven') {
sh 'mvn -B clean verify'
}
}
}
agent { kubernetes { cloud 'openshift' label 'test' default 'jnlp' yamlFile 'jenkins/BuildPod.yaml' } }
Попробуйте добавить 'jnlp' по умолчанию