Подскажите плз, сломал уже мозг себе и всем GPT вокруг:
- ставлю jenkins на k3s через официальный helm chart (не bitnami) через Argo CD
Chart.yaml
apiVersion: v2
name: jenkins
version: "5.7.3"
appVersion: 2.462.3
description: Jenkins Continuous Integration and Continuous Delivery server
dependencies:
- name: jenkins
version: "5.7.3"
repository: https://charts.jenkins.io
Он заводится. Есть отдельные приколы с ingress, который он не хавает из values.yaml, но я его отдельным манифестом прикрутил. Пока работает, потом разберусь.
Чудеса дальше: начинаю создавать pipeline из моего github private repo. Добавляю Pipeline script from SCM -> Repositories -> Repository URL. Раньше (до переустановки) у меня это просто нормально работало - добавляем github access token и поехали. А сейчас он вроде бы дает добавить, но не показывает token в выпадающем списке. При этом, в credentials я этот токен вижу. Но выбрать его не дает, а выдает:
Failed to connect to repository : Command "git ls-remote -h -- https://github.com/<repo>.git/ HEAD" returned status code 128:
stdout:
stderr: remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/<repo>.git/'
Есть идеи?
docker compose --project-name dummy_super_server up --build -d --force-recreate
--project-name относится к верхнему уровню
это для запуска, если кратко - добавляется доп префикс к именам контейнера
каталог проекта это --project-directory
попробуй еще --project-name string при запуске использовать - и контейнеры в разных композах лучше отличать, и запуск/останов безопаснее
Читать полностью…Как я понял из справки, --remove-orphan удаляет все контейнеры, запущенные не из compose файла. Но у меня есть другие контенеры в докере. Я так понимаю, они будут удалены тоже?
Читать полностью…--remove-orphan - это название параметра? или сюда нужно вставить какой-то идентифкатор?
не могли бы Вы написать как для нуба?
Джентельмены, подскажите, как можно решить проблему?
По одной из задач Jenkins выполняет всего две операции:
1) Загружает исходный код.
2) вполняет docker compose up --build
Т. е. результат сборки стартует в контейнере в результате выполнения первой операции.
Если контейнер запущен - приходится заходить на удаленный сервер, чтоб остановить контейнер.
После этого Jenkins его запускает, но таск не завершает.
Приходится еще раз останавливать контейнер и сново его запускать.
Можно ли как-то автоматизировать этот процесс?
нет прямой связности между гитлабом и дженкинсом, пришлось через гитлаб агент делать, который запущен на ноде с дженкинсом
Читать полностью…всё получилось ))) спасибо всем )) вообще не надо было создавать ничего в гите URL прописать и при сканировании он сам на гите вебхук создал
Читать полностью…Sep 29, 2024 1:28:52 PM INFO com.dabsquared.gitlabjenkins.webhook.GitLabWebHook getDynamic
WebHook called with url: /project/devops/bottlesbo/devops-tech/main
Error response from daemon: driver failed programming external connectivity on endpoint dummy_super_server-server-1 (c5d4da2cdf6a2551a6ce96482a4702584637733b2ceb6bdc12ac726c3258cb59): Bind for 0.0.0.0:8090 failed: port is already allocated
не очень понимаю, что это значит
Jenkins сказал
unknown flag: --project-name
Вот полная команда:
docker compose up --build -d --force-recreate --project-name dummy_super_server
разве при выполнении docker compose up --build может использоваться какой-то другой контейнер, кроме того, который находится в текущей директории?
Читать полностью…Перед запуском делать docker compose down -v --remove-orphan ну или как final и на обработку ошибок добавить
Читать полностью…Писать пайплайны на дженкинсе - мёд
Как только дело заходит чуть дальше запуска внешнего скрипта, например с динамической генерацией дочерних пайпланов, кроме дженкинса ничего и не выбрать
а чем gitlab plugin + gitlab hook из gitlab не подошел?
тут еще надо костылить обратный ответ от Jenkins в MR например
Я все понимаю у каждого из нас своя боль, ничего против не имею. Хочешь жить умей вертеться
Читать полностью…понимаю, но требование заказчика такое, что гитлаб - общая хранилка, а на дженкинс для отдельного проекта
Читать полностью…Гитлабовский пайплайн для триггера джобы дженкинс
stages:Читать полностью…
- trigger_jenkins
trigger_jenkins_job:
stage: trigger_jenkins
script:
- |
echo "Triggering Jenkins job"
COMMIT_AUTHOR=$GITLAB_USER_NAME
BRANCH_NAME=$CI_COMMIT_REF_NAME
PROJECT_NAME=$CI_PROJECT_NAME
COMMIT_SHA=$(git rev-parse HEAD)
COMMIT_DATE=$CI_COMMIT_TIMESTAMP
JENKINS_URL="http://jenkins.local/job/test-webhook-trigger/job/test-job/buildWithParameters"
CRUMB=$(curl -s "http://jenkins.local/crumbIssuer/api/json" --user "$JENKINS_API_USER:$JENKINS_API_TOKEN" | jq -r '.crumb')
curl -X POST "${JENKINS_URL}" \
--user "$JENKINS_API_USER:$JENKINS_API_TOKEN" \
--data-urlencode "commit_author=${COMMIT_AUTHOR}" \
--data-urlencode "branch_name=${BRANCH_NAME}" \
--data-urlencode "project_name=${PROJECT_NAME}" \
--data-urlencode "commit_sha=${COMMIT_SHA}" \
--data-urlencode "commit_date=${COMMIT_DATE}" \
--header "Jenkins-Crumb:${CRUMB}"
да ... вот есть у неё в настройках build trigger а в настройках organization folder её нет , в это и упёрся (
Читать полностью…