Привет, как Circleci относится к тебе? Если вы используете его в качестве вашего инструмента CI/CD, я уверен, что нужно для слабых уведомлений, сообщающих о состоянии на слабом канале. Есть несколько шаблонов по умолчанию, как basic_fail_1
и Success_Tagged_deploy_1
по Circleci/Slack orb Для мгновенного использования, но вы также можете предоставить пользовательский шаблон, если вам не нравится формат шаблона по умолчанию.
Подход к настройке шаблона здесь состоит в том, чтобы включить более информационные теги в сообщении уведомления. Кроме того, мы хотим, чтобы это был многоразовый шаблон и используется несколькими заданиями в нашем трубопроводе. Мы можем сделать это с Команды
в Circleci’s config.yml
Отказ Обратите внимание на << parations.env >> будет динамической входной строкой.
commands: notify-success: parameters: env: type: string default: "env" steps: - slack/notify: event: pass custom: | { "text": "CircleCI job succeeded!", "blocks": [ { "type": "header", "text": { "type": "plain_text", "text": "Job Successful. :tada:", "emoji": true } }, { "type": "section", "fields": [ { "type": "mrkdwn", "text": "*Env*: << parameters.env >>" }, { "type": "mrkdwn", "text": "*Job*: ${CIRCLE_JOB}" } ] }, { "type": "section", "fields": [ { "type": "mrkdwn", "text": "*Project*: $CIRCLE_PROJECT_REPONAME" }, { "type": "mrkdwn", "text": "*Branch*: $CIRCLE_BRANCH" } ] }, { "type": "actions", "elements": [ { "type": "button", "text": { "type": "plain_text", "text": "View Job" }, "url": "${CIRCLE_BUILD_URL}" } ] } ] }
Чтобы использовать команды на работе, например:
jobs: deploy-mobile: docker: - image: 'cimg/node:15.14.0' resource_class: large steps: - checkout - node/install-packages: pkg-manager: yarn app-dir: ./mobile override-ci-command: yarn install --frozen-lockfile with-cache: true - run: yarn deploy:mobile - notify-success: env: "Mobile Staging" deploy-web: docker: - image: 'cimg/python:3.6.11-node' resource_class: large steps: - checkout - node/install-packages: pkg-manager: yarn app-dir: ./webapp override-ci-command: yarn install --frozen-lockfile with-cache: true - run: yarn deploy:web - notify-success: env: "Web Production"
Сокращение уведомления о результатах:
Оригинал: «https://dev.to/kylefoo/circleci-slack-custom-template-55a5»