|
@@ -1,9 +1,17 @@
|
|
|
stages:
|
|
stages:
|
|
|
- build
|
|
- build
|
|
|
- test
|
|
- test
|
|
|
|
|
+ - deploy
|
|
|
|
|
+
|
|
|
|
|
+workflow:
|
|
|
|
|
+ rules:
|
|
|
|
|
+ - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
|
|
|
|
+ - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS && $CI_PIPELINE_SOURCE == "push"
|
|
|
|
|
+ when: never
|
|
|
|
|
+ - if: "$CI_COMMIT_BRANCH"
|
|
|
|
|
|
|
|
variables:
|
|
variables:
|
|
|
- IDF_REPO: https://gitlab-ci-token:${CI_JOB_TOKEN}@${IDF_MIRROR_HOST}/espressif/esp-idf.git
|
|
|
|
|
|
|
+ IDF_REPO: https://github.com/espressif/esp-idf.git
|
|
|
STM32_CUBE_F4_REPO: https://github.com/STMicroelectronics/STM32CubeF4
|
|
STM32_CUBE_F4_REPO: https://github.com/STMicroelectronics/STM32CubeF4
|
|
|
SERIAL_FLASHER_REPO: ${GITLAB_SSH_SERVER}/espressif/esp-serial-flasher.git
|
|
SERIAL_FLASHER_REPO: ${GITLAB_SSH_SERVER}/espressif/esp-serial-flasher.git
|
|
|
QEMU_PATH: /opt/qemu/bin/qemu-system-xtensa
|
|
QEMU_PATH: /opt/qemu/bin/qemu-system-xtensa
|
|
@@ -25,13 +33,15 @@ variables:
|
|
|
tar -xjf gcc-arm-none-eabi.tar.bz2
|
|
tar -xjf gcc-arm-none-eabi.tar.bz2
|
|
|
mv gcc-arm-none-eabi-* gcc-arm-none-eabi
|
|
mv gcc-arm-none-eabi-* gcc-arm-none-eabi
|
|
|
|
|
|
|
|
-before_script:
|
|
|
|
|
- # Use CI Tools
|
|
|
|
|
- - curl -sSL ${CIT_LOADER_URL} | sh
|
|
|
|
|
- - source citools/import_functions
|
|
|
|
|
- - PATH=$CI_PROJECT_DIR/esp-idf/tools:$PATH
|
|
|
|
|
|
|
+.build_test_template:
|
|
|
|
|
+ before_script:
|
|
|
|
|
+ # Use CI Tools
|
|
|
|
|
+ - curl -sSL ${CIT_LOADER_URL} | sh
|
|
|
|
|
+ - source citools/import_functions
|
|
|
|
|
+ - PATH=$CI_PROJECT_DIR/esp-idf/tools:$PATH
|
|
|
|
|
|
|
|
build_with_idf:
|
|
build_with_idf:
|
|
|
|
|
+ extends: .build_test_template
|
|
|
stage: build
|
|
stage: build
|
|
|
image: $CI_DOCKER_REGISTRY/esp-env:v4.4-1
|
|
image: $CI_DOCKER_REGISTRY/esp-env:v4.4-1
|
|
|
tags:
|
|
tags:
|
|
@@ -50,6 +60,7 @@ build_with_idf:
|
|
|
- cmake -DTOOLCHAIN_PREFIX=$CI_PROJECT_DIR/gcc-arm-none-eabi -DSTM32Cube_DIR=$CI_PROJECT_DIR/STM32CubeF4 .. && cmake --build .
|
|
- cmake -DTOOLCHAIN_PREFIX=$CI_PROJECT_DIR/gcc-arm-none-eabi -DSTM32Cube_DIR=$CI_PROJECT_DIR/STM32CubeF4 .. && cmake --build .
|
|
|
|
|
|
|
|
run_tests:
|
|
run_tests:
|
|
|
|
|
+ extends: .build_test_template
|
|
|
stage: test
|
|
stage: test
|
|
|
image: ${CI_DOCKER_REGISTRY}/qemu:esp-develop-20191124
|
|
image: ${CI_DOCKER_REGISTRY}/qemu:esp-develop-20191124
|
|
|
tags:
|
|
tags:
|
|
@@ -60,3 +71,16 @@ run_tests:
|
|
|
- export QEMU_PATH=/opt/qemu/bin/qemu-system-xtensa
|
|
- export QEMU_PATH=/opt/qemu/bin/qemu-system-xtensa
|
|
|
- ./run_test.sh qemu
|
|
- ./run_test.sh qemu
|
|
|
- ./run_test.sh host
|
|
- ./run_test.sh host
|
|
|
|
|
+
|
|
|
|
|
+push_to_the_components_registry:
|
|
|
|
|
+ stage: deploy
|
|
|
|
|
+ image: python:3.10-alpine
|
|
|
|
|
+ tags:
|
|
|
|
|
+ - build
|
|
|
|
|
+ - internet
|
|
|
|
|
+ rules:
|
|
|
|
|
+ - if: '$CI_COMMIT_BRANCH == "master"'
|
|
|
|
|
+ - if: '$FORCE_PUSH_COMPONENT == "1"'
|
|
|
|
|
+ script:
|
|
|
|
|
+ - pip install idf-component-manager
|
|
|
|
|
+ - python -m idf_component_manager upload-component --allow-existing --name=esp-serial-flasher --namespace=espressif
|