kind: pipeline type: docker name: Lint on PR trigger: event: - pull_request steps: - name: python3.8 image: python:3.8-slim-bullseye commands: - "python3 --version" - "pip3 install yamllint" - "yamllint --version" - 'find . -name "*.yml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' - 'find . -name "*.yaml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' - name: python3.9 image: python:3.9-slim-bullseye commands: - "python3 --version" - "pip3 install yamllint" - "yamllint --version" - 'find . -name "*.yml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' - 'find . -name "*.yaml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' - name: python3.10 image: python:3.10-slim-bullseye commands: - "python3 --version" - "pip3 install yamllint" - "yamllint --version" - 'find . -name "*.yml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' - 'find . -name "*.yaml" ! -name ".drone.yml" -exec yamllint -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} +' --- kind: pipeline type: gitea name: update-branch-on-push # This triggers the pipeline only when there's a push to the "main" branch. trigger: branch: - main # Define steps for the pipeline steps: - name: Checkout code git: depth: 1 # Find subfolders with docker-compose.yml files - name: Find folders to update script: | folders=$(find . -type d -name 'docker-compose.yml' | sed 's/\/docker-compose\.yml//g' | uniq) echo "Found folders: $folders" # Loop through each folder and update its branch - name: Update branches template: | {{ range $folder := $folders }} - name: Update {{ $folder }} branch commands: - git fetch origin {{ $folder }} - git checkout {{ $folder }} - git rebase origin/main - git push origin {{ $folder }} {{ end }} # This condition ensures the pipeline runs only if there are changes to any folder when: - expression: | git diff --name-only origin/main HEAD | grep -E '\.(yml|yaml)'