fix: Show drag handle of bottom sheet #1068
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: π Pipeline | |
on: | |
push: | |
branches: ["**"] | |
env: | |
DOCKER_REGISTRY: ghcr.io | |
PRIVATE_REPOSITORY: OpenEMS-private | |
jobs: | |
release-please: | |
name: β¨ Release Please | |
if: github.ref_name == 'main' | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
pull-requests: write | |
outputs: | |
created: ${{ steps.release.outputs.releases_created }} | |
app-created: ${{ steps.release.outputs.app--release_created }} | |
server-created: ${{ steps.release.outputs.server--release_created }} | |
keycloak-created: ${{ steps.release.outputs.keycloak--release_created }} | |
steps: | |
- name: π Get app token | |
uses: actions/create-github-app-token@v1 | |
id: app-token | |
with: | |
app-id: ${{ vars.OCE_APP_ID }} | |
private-key: ${{ secrets.OCE_APP_PRIVATE_KEY }} | |
- name: β¨ Release Please | |
id: release | |
uses: googleapis/release-please-action@v4 | |
with: | |
config-file: release-please/config.json | |
manifest-file: release-please/manifest.json | |
token: ${{ steps.app-token.outputs.token }} | |
debug-release-please: | |
name: π Debug | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
steps: | |
- name: π£ Outputs | |
run: | | |
echo 'β¨ Releases: ${{ needs.release-please.outputs.created }}' | |
echo 'π± App: ${{ needs.release-please.outputs.app-created }}' | |
echo 'π Server: ${{ needs.release-please.outputs.server-created }}' | |
echo 'π΅οΈββοΈ Keycloak: ${{ needs.release-please.outputs.keycloak-created }}' | |
build-app: | |
name: π± Build app | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
subcommand: [appbundle, web] | |
defaults: | |
run: | |
working-directory: app | |
steps: | |
- name: π Checkout | |
uses: actions/checkout@v4 | |
- name: ποΈ Setup environment | |
uses: ./.github/actions/setup-environment | |
with: | |
flutter: true | |
- name: π Restore dependencies | |
run: just pub-get | |
- name: π¨ Analyze | |
run: just analyze | |
- name: π οΈ Build ${{ matrix.subcommand }} | |
run: just build ${{ matrix.subcommand }} | |
publish-web-app: | |
name: π³ Publish web app docker image | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
- build-app | |
if: needs.release-please.outputs.app-created | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: π Checkout | |
uses: actions/checkout@v4 | |
- name: ποΈ Setup environment | |
uses: ./.github/actions/setup-environment | |
with: | |
flutter: true | |
dotnet: true | |
docker: true | |
- name: ποΈ Login to container registry. | |
uses: docker/login-action@v3 | |
with: | |
registry: ${{ env.DOCKER_REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: π³ Build and push docker image | |
run: just target app:publish | |
test-server: | |
name: π Test server | |
runs-on: ubuntu-latest | |
steps: | |
- name: π Checkout | |
uses: actions/checkout@v4 | |
- name: ποΈ Setup environment | |
uses: ./.github/actions/setup-environment | |
with: | |
dotnet: true | |
docker: true | |
- name: π§ͺ Test | |
run: just target build:test | |
publish-server: | |
name: π³ Publish server docker image | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
- test-server | |
if: needs.release-please.outputs.server-created | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: π Checkout | |
uses: actions/checkout@v4 | |
- name: ποΈ Setup environment | |
uses: ./.github/actions/setup-environment | |
with: | |
dotnet: true | |
docker: true | |
- name: ποΈ Login to container registry. | |
uses: docker/login-action@v3 | |
with: | |
registry: ${{ env.DOCKER_REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: π³ Build and push docker image | |
run: just target docker:publish | |
publish-keycloak: | |
name: π³ Publish keycloak docker image | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
if: needs.release-please.outputs.keycloak-created | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: π Checkout | |
uses: actions/checkout@v4 | |
- name: ποΈ Setup environment | |
uses: ./.github/actions/setup-environment | |
with: | |
dotnet: true | |
docker: true | |
- name: ποΈ Login to container registry. | |
uses: docker/login-action@v3 | |
with: | |
registry: ${{ env.DOCKER_REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: π³ Build and push docker image | |
run: just target keycloak:publish | |
deploy: | |
name: π Trigger deployment | |
runs-on: ubuntu-latest | |
needs: | |
- publish-server | |
- publish-keycloak | |
- publish-web-app | |
# always(): run even if one of 'needs' is skipped | |
# contains(needs.*.result, 'success') does not work | |
# see: https://github.com/actions/runner/issues/1251#issuecomment-1691111412 | |
if: > | |
always() && ( | |
needs.publish-server.result == 'success' || | |
needs.publish-keycloak.result == 'success' || | |
needs.publish-web-app.result == 'success' | |
) | |
steps: | |
- name: π Get app token | |
uses: actions/create-github-app-token@v1 | |
id: app-token | |
with: | |
app-id: ${{ vars.OCE_APP_ID }} | |
private-key: ${{ secrets.OCE_APP_PRIVATE_KEY }} | |
owner: ${{ github.repository_owner }} | |
repositories: ${{ env.PRIVATE_REPOSITORY }} | |
- name: π Trigger deployment | |
uses: peter-evans/repository-dispatch@v3 | |
with: | |
token: ${{ steps.app-token.outputs.token }} | |
repository: ${{ github.repository_owner }}/${{ env.PRIVATE_REPOSITORY }} | |
event-type: deploy | |
client-payload: '{ "ref": "${{ github.ref }}" }' | |
publish-app: | |
name: π± Trigger publish app | |
runs-on: ubuntu-latest | |
needs: | |
- build-app | |
- release-please | |
if: needs.release-please.outputs.app-created | |
steps: | |
- name: π Get app token | |
uses: actions/create-github-app-token@v1 | |
id: app-token | |
with: | |
app-id: ${{ vars.OCE_APP_ID }} | |
private-key: ${{ secrets.OCE_APP_PRIVATE_KEY }} | |
owner: ${{ github.repository_owner }} | |
repositories: ${{ env.PRIVATE_REPOSITORY }} | |
- name: π± Trigger publish app | |
uses: peter-evans/repository-dispatch@v3 | |
with: | |
token: ${{ steps.app-token.outputs.token }} | |
repository: ${{ github.repository_owner }}/${{ env.PRIVATE_REPOSITORY }} | |
event-type: publish-app | |
client-payload: '{ "ref": "${{ github.ref }}" }' |