-
Notifications
You must be signed in to change notification settings - Fork 0
71 lines (57 loc) · 2.11 KB
/
pub-publish.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# .github/workflows/publish.yml
name: Publish to pub.dev
on:
push:
tags:
- "v[0-9]+.[0-9]+.[0-9]+*" # tag pattern on pub.dev: 'v'
# Publish using custom workflow
jobs:
publish:
permissions:
id-token: write # Required for authentication using OIDC
contents: write # Required for writing to the release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
# Note: This workflow uses the latest stable version of the Dart SDK.
# You can specify other versions if desired, see documentation here:
# https://github.com/dart-lang/setup-dart/blob/main/README.md
- uses: dart-lang/setup-dart@v1
- name: Extract release notes
id: extract-release-notes
run: |
FILE_CONTENTS=$(awk '/^## /{if(++n==2)exit} {print}' CHANGELOG.md)
echo "::set-output name=contents::${FILE_CONTENTS}"
- name: Update Release Description
uses: softprops/action-gh-release@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
body: |
${{ steps.extract-release-notes.outputs.contents }}
- name: Install dependencies
run: dart pub get
# Consider passing '--fatal-infos' for slightly stricter analysis.
- name: Analyze project source
run: dart analyze --fatal-infos
# Testing pro jidelna.trebesin.cz
- name: Credentials pro jidelna.trebesin.cz
run: |
echo "URL= 'jidelna.trebesin.cz'" > .env
echo "USER= '${{ secrets.USER1 }}'" >> .env
echo "PASS= '${{ secrets.PASS1 }}'" >> .env
- name: test pro jidelna.trebesin.cz
run: dart test
# Testing pro obedy.zs-mat5.cz
- name: Credentials pro obedy.zs-mat5.cz
run: |
echo "URL= 'obedy.zs-mat5.cz'" > .env
echo "USER= '${{ secrets.USER2 }}'" >> .env
echo "PASS= '${{ secrets.PASS2 }}'" >> .env
- name: Test pro obedy.zs-mat5.cz
run: dart test
- name: Removing credentials
run: rm -rf .env
- name: Formatting for pub
run: dart format .
- name: Publish
run: dart pub publish --force