Skip to content

Commit 212cecf

Browse files
committed
Merge branch 'main' of github.com:ionic-team/ionic-framework into fix/date-time
2 parents 9469718 + 99bfdee commit 212cecf

10 files changed

Lines changed: 160 additions & 57 deletions

File tree

.github/workflows/actions/publish-npm/action.yml renamed to .github/actions/publish-npm/action.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ runs:
2626
with:
2727
node-version: ${{ inputs.node-version }}
2828
registry-url: 'https://registry.npmjs.org'
29+
scope: '@ionic'
2930
# Provenance requires npm 9.5.0+
3031
- name: 📦 Install latest npm
3132
run: npm install -g npm@latest
@@ -56,3 +57,4 @@ runs:
5657
run: npm publish ${{ inputs.folder }} --tag ${{ inputs.tag }} --provenance
5758
shell: bash
5859
working-directory: ${{ inputs.working-directory }}
60+

.github/workflows/dev-build.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
name: 'Ionic Dev Build'
22

33
on:
4-
workflow_dispatch:
4+
workflow_call:
5+
6+
permissions:
7+
contents: read
8+
id-token: write
59

610
jobs:
711
create-dev-hash:
@@ -25,6 +29,7 @@ jobs:
2529
release-ionic:
2630
needs: [create-dev-hash]
2731
permissions:
32+
contents: read
2833
id-token: write
2934
uses: ./.github/workflows/release-ionic.yml
3035
with:

.github/workflows/nightly.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
name: 'Ionic Nightly Build'
22

33
on:
4-
schedule:
5-
# Run every Monday-Friday
6-
# at 6:00 UTC (6:00 am UTC)
7-
- cron: '00 06 * * 1-5'
4+
workflow_call:
5+
6+
permissions:
7+
contents: read
8+
id-token: write
89

910
jobs:
1011
create-nightly-hash:
@@ -30,6 +31,7 @@ jobs:
3031
release-ionic:
3132
needs: [create-nightly-hash]
3233
permissions:
34+
contents: read
3335
id-token: write
3436
uses: ./.github/workflows/release-ionic.yml
3537
with:

.github/workflows/release-ionic.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
runs-on: ubuntu-latest
2525
steps:
2626
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
27-
- uses: ./.github/workflows/actions/publish-npm
27+
- uses: ./.github/actions/publish-npm
2828
with:
2929
scope: '@ionic/core'
3030
tag: ${{ inputs.tag }}
@@ -55,7 +55,7 @@ jobs:
5555
name: ionic-docs
5656
path: ./packages/docs
5757
filename: DocsBuild.zip
58-
- uses: ./.github/workflows/actions/publish-npm
58+
- uses: ./.github/actions/publish-npm
5959
with:
6060
scope: '@ionic/docs'
6161
tag: ${{ inputs.tag }}
@@ -74,7 +74,7 @@ jobs:
7474
name: ionic-core
7575
path: ./core
7676
filename: CoreBuild.zip
77-
- uses: ./.github/workflows/actions/publish-npm
77+
- uses: ./.github/actions/publish-npm
7878
with:
7979
scope: '@ionic/angular'
8080
tag: ${{ inputs.tag }}
@@ -100,7 +100,7 @@ jobs:
100100
name: ionic-core
101101
path: ./core
102102
filename: CoreBuild.zip
103-
- uses: ./.github/workflows/actions/publish-npm
103+
- uses: ./.github/actions/publish-npm
104104
with:
105105
scope: '@ionic/react'
106106
tag: ${{ inputs.tag }}
@@ -125,7 +125,7 @@ jobs:
125125
name: ionic-core
126126
path: ./core
127127
filename: CoreBuild.zip
128-
- uses: ./.github/workflows/actions/publish-npm
128+
- uses: ./.github/actions/publish-npm
129129
with:
130130
scope: '@ionic/vue'
131131
tag: ${{ inputs.tag }}
@@ -150,7 +150,7 @@ jobs:
150150
name: ionic-core
151151
path: ./core
152152
filename: CoreBuild.zip
153-
- uses: ./.github/workflows/actions/publish-npm
153+
- uses: ./.github/actions/publish-npm
154154
with:
155155
scope: '@ionic/angular-server'
156156
tag: ${{ inputs.tag }}
@@ -176,7 +176,7 @@ jobs:
176176
name: ionic-react
177177
path: ./packages/react
178178
filename: ReactBuild.zip
179-
- uses: ./.github/workflows/actions/publish-npm
179+
- uses: ./.github/actions/publish-npm
180180
with:
181181
scope: '@ionic/react-router'
182182
tag: ${{ inputs.tag }}
@@ -201,7 +201,7 @@ jobs:
201201
name: ionic-vue
202202
path: ./packages/vue
203203
filename: VueBuild.zip
204-
- uses: ./.github/workflows/actions/publish-npm
204+
- uses: ./.github/actions/publish-npm
205205
with:
206206
scope: '@ionic/vue-router'
207207
tag: ${{ inputs.tag }}
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: 'Release - Ionic Framework'
2+
3+
on:
4+
schedule:
5+
# Run every Monday-Friday
6+
# at 6:00 UTC (6:00 am UTC)
7+
- cron: '00 06 * * 1-5'
8+
workflow_dispatch:
9+
inputs:
10+
release-type:
11+
description: 'Which Ionic release workflow should run?'
12+
required: true
13+
type: choice
14+
default: nightly
15+
options:
16+
- dev
17+
- nightly
18+
- production
19+
version:
20+
description: 'Which version should be published? (Only for production releases)'
21+
required: false
22+
type: choice
23+
options:
24+
- patch
25+
- minor
26+
- major
27+
- prepatch
28+
- preminor
29+
- premajor
30+
- prerelease
31+
tag:
32+
description: 'Which npm tag should this be published to? (Only for production releases)'
33+
required: false
34+
type: choice
35+
default: latest
36+
options:
37+
- latest
38+
- next
39+
preid:
40+
description: 'Which prerelease identifier should be used? (Only for production releases)'
41+
required: false
42+
type: choice
43+
default: ''
44+
options:
45+
- ''
46+
- alpha
47+
- beta
48+
- rc
49+
- next
50+
51+
permissions:
52+
contents: read
53+
id-token: write
54+
55+
jobs:
56+
run-nightly:
57+
if: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && inputs.release-type == 'nightly') }}
58+
uses: ./.github/workflows/nightly.yml
59+
secrets: inherit
60+
61+
run-dev:
62+
if: ${{ github.event_name == 'workflow_dispatch' && inputs.release-type == 'dev' }}
63+
uses: ./.github/workflows/dev-build.yml
64+
secrets: inherit
65+
66+
run-production:
67+
if: ${{ github.event_name == 'workflow_dispatch' && inputs.release-type == 'production' }}
68+
uses: ./.github/workflows/release.yml
69+
secrets: inherit
70+
with:
71+
version: ${{ inputs.version }}
72+
tag: ${{ inputs.tag }}
73+
preid: ${{ inputs.preid }}

.github/workflows/release.yml

Lines changed: 32 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,47 @@
11
name: 'Ionic Production Release'
22

33
on:
4-
workflow_dispatch:
4+
workflow_call:
55
inputs:
66
version:
7+
description: 'Which version should be published?'
78
required: true
8-
type: choice
9-
description: Which version should be published?
10-
options:
11-
- patch
12-
- minor
13-
- major
14-
- prepatch
15-
- preminor
16-
- premajor
17-
- prerelease
9+
type: string
1810
tag:
11+
description: 'Which npm tag should this be published to?'
1912
required: true
20-
type: choice
21-
description: Which npm tag should this be published to?
22-
options:
23-
- latest
24-
- next
13+
type: string
2514
preid:
26-
type: choice
27-
description: Which prerelease identifier should be used? This is only needed when version is "prepatch", "preminor", "premajor", or "prerelease".
28-
default: ''
29-
options:
30-
- ''
31-
- alpha
32-
- beta
33-
- rc
34-
- next
15+
description: 'Which prerelease identifier should be used? This is only needed when version is "prepatch", "preminor", "premajor", or "prerelease".'
16+
required: false
17+
type: string
18+
19+
permissions:
20+
contents: read
21+
id-token: write
3522

3623
jobs:
24+
validate_version:
25+
name: ✅ Validate Version Input
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: 🔎 Ensure version is allowed
29+
env:
30+
VERSION: ${{ inputs.version }}
31+
run: |
32+
case "$VERSION" in
33+
patch|minor|major|prepatch|preminor|premajor|prerelease)
34+
exit 0
35+
;;
36+
*)
37+
echo "::error::Invalid version input: '$VERSION'. Allowed values: patch, minor, major, prepatch, preminor, premajor, prerelease."
38+
exit 1
39+
;;
40+
esac
41+
shell: bash
42+
3743
release-ionic:
44+
needs: [validate_version]
3845
permissions:
3946
contents: read
4047
id-token: write

core/package-lock.json

Lines changed: 9 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
"@stencil/sass": "^3.0.9",
5353
"@stencil/vue-output-target": "0.10.8",
5454
"@types/jest": "^29.5.6",
55-
"@types/node": "^14.6.0",
55+
"@types/node": "^16.18.126",
5656
"@typescript-eslint/eslint-plugin": "^6.7.2",
5757
"@typescript-eslint/parser": "^6.7.2",
5858
"chalk": "^5.3.0",

packages/angular/package-lock.json

Lines changed: 21 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)