kind: pipeline type: docker name: Upstreaming steps: - name: "Sync upstream to local" image: alpine/git when: event: - cron - promote target: - upstream branch: - core environment: GITEA_SSH_KEY: from_secret: gitea_ssh_key commands: - ./.drone/setup_ssh.sh - git fetch - git checkout devos - git remote add devos git@git.b12f.io:pub-solar/devos - git remote set-url origin git@git.b12f.io:pub-solar/os - git fetch --all - git merge -X theirs devos/core - git push origin devos - name: "Sync branch with upstream" image: alpine/git when: status: - success event: - cron - promote target: - upstream environment: GITEA_SSH_KEY: from_secret: gitea_ssh_key commands: - ./.drone/setup_ssh.sh - ./.drone/upstream-branch.sh - name: "Open pull request for failed merge" image: nixery.dev/shell/tea when: status: - failure event: - cron - promote target: - upstream branch: - core environment: TEA_CONFIG: from_secret: tea_config commands: - mkdir -p ~/.config/tea - echo "$$TEA_CONFIG" > ~/.config/tea/config.yml - tea pulls create --base core --head devos - name: "Notify matrix" image: plugins/matrix when: event: - cron - promote target: - upstream settings: homeserver: https://matrix.pub.solar roomid: dfQBqwkhIzrFjMSsxy:pub.solar username: from_secret: matrix_username password: from_secret: matrix_password template: "Upstreaming {{ build.status }} [{{ build.branch }}#{{ truncate build.commit 8 }}]({{ build.link }}) by {{ build.author }}. [Pull requests](https://git.b12f.io/pub-solar/os/pulls)"