Skip to content

Commit 2272c9f

Browse files
antoonpmickenordin
andcommitted
feat(OCM-Invites): Implement exchanging cloud IDs through OCM invitation workflow
see https://github.com/cs3org/OCM-API/blob/v1.2.1/IETF-RFC.md Features: - Button to invite remote users to exchange cloudIDs. - Button to manually accept invite to exchange cloudIDs. - WAYF page allowing the receiver of the invite to open and accept the invitation. - Listing of open invitations. - Option to resend, revoke open invitations. Signed-off-by: antoonp <[email protected]> Co-authored-by: Micke Nordin <[email protected]>
1 parent e5350bb commit 2272c9f

File tree

425 files changed

+29772
-19191
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

425 files changed

+29772
-19191
lines changed

.eslintrc.cjs

Lines changed: 0 additions & 18 deletions
This file was deleted.

.git-blame-ignore-revs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
# Update to coding-standard 1.2.3
77
fe16be69e7a10647508f8c0b63383cbb5ffbde84
88

9+
# Update to coding-standard 1.4.0
10+
a655ee51f00edfa44f8e76ee90ad701e601717c3
11+
912
# Bump @nextcloud/stylelint-config from 2.3.0 to ^2.4.0
1013
b6e141bba3b4a19718d7eef1f89dfab6bcfcf6aa
1114

.gitattributes

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
2+
# SPDX-License-Identifier: AGPL-3.0-or-later
3+
4+
/tests/assets/*.vcf text eol=crlf

.github/ISSUE_TEMPLATE/bug_report_circles.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: "Bug report for circles"
22
description: "Help us improving by reporting a bug for the contacts feature of this app"
3-
labels: ["bug", "0. Needs triage", "feature: circles"]
3+
labels: ["bug", "0. Needs triage", "feature: teams"]
44
body:
55
- type: markdown
66
attributes:

.github/ISSUE_TEMPLATE/bug_report_contacts.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,10 @@ body:
5757
Select PHP engine version serving Nextcloud Server.
5858
_Describe in the "Additional info" section if you chose "Other"._
5959
options:
60-
- "PHP 7.3"
61-
- "PHP 7.4"
62-
- "PHP 8.0"
6360
- "PHP 8.1"
6461
- "PHP 8.2"
6562
- "PHP 8.3"
63+
- "PHP 8.4"
6664
- "Other"
6765
- type: dropdown
6866
id: webserver

.github/workflows/appstore-build-publish.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ jobs:
3232
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV
3333
3434
- name: Checkout
35-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
35+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3636
with:
3737
path: ${{ env.APP_NAME }}
3838

3939
- name: Get appinfo data
4040
id: appinfo
41-
uses: skjnldsv/xpath-action@7e6a7c379d0e9abc8acaef43df403ab4fc4f770c # master
41+
uses: skjnldsv/xpath-action@d813024a13948950fd8d23b580254feeb4883d3c # master
4242
with:
4343
filename: ${{ env.APP_NAME }}/appinfo/info.xml
4444
expression: "//info//dependencies//nextcloud/@min-version"
@@ -56,7 +56,7 @@ jobs:
5656
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
5757
# Skip if no package.json
5858
if: ${{ steps.versions.outputs.nodeVersion }}
59-
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
59+
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
6060
with:
6161
node-version: ${{ steps.versions.outputs.nodeVersion }}
6262

@@ -72,7 +72,7 @@ jobs:
7272
filename: ${{ env.APP_NAME }}/appinfo/info.xml
7373

7474
- name: Set up php ${{ steps.php-versions.outputs.php-min }}
75-
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # 2.32.0
75+
uses: shivammathur/setup-php@bf6b4fbd49ca58e4608c9c89fba0b8d90bd2a39f # 2.35.5
7676
with:
7777
php-version: ${{ steps.php-versions.outputs.php-min }}
7878
coverage: none
@@ -134,7 +134,7 @@ jobs:
134134
unzip latest-$NCVERSION.zip
135135
136136
- name: Checkout server master fallback
137-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
137+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
138138
if: ${{ steps.server-checkout.outcome != 'success' }}
139139
with:
140140
submodules: true
@@ -157,7 +157,7 @@ jobs:
157157
tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }}
158158
159159
- name: Attach tarball to github release
160-
uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2
160+
uses: svenstaro/upload-release-action@81c65b7cd4de9b2570615ce3aad67a41de5b1a13 # v2
161161
id: attach_to_release
162162
with:
163163
repo_token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/appstore-conventional-build-publish.yml

Lines changed: 31 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,28 @@
33
# https://github.com/nextcloud/.github
44
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
55
#
6-
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
6+
# SPDX-FileCopyrightText: 2021-2025 Nextcloud GmbH and Nextcloud contributors
77
# SPDX-License-Identifier: MIT
88

99
name: Build and publish app release conventionally
1010

1111
on:
1212
workflow_dispatch:
1313
branches: stable*
14+
inputs:
15+
prerelease:
16+
description: 'Pre-release'
17+
type: boolean
18+
required: true
19+
prereleaseIdentifier:
20+
description: 'Pre-release identifier'
21+
required: true
22+
default: 'rc'
23+
type: choice
24+
options:
25+
- alpha
26+
- beta
27+
- rc
1428

1529
env:
1630
PHP_VERSION: 8.2
@@ -30,16 +44,17 @@ jobs:
3044
run: |
3145
# Split and keep last
3246
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
47+
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV
3348
3449
- name: Checkout
35-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3651
with:
3752
token: ${{ secrets.RELEASE_PAT }}
3853
fetch-depth: 0
3954

4055
- name: Conventional Changelog Action
4156
id: changelog
42-
uses: TriPSs/conventional-changelog-action@67139193614f5b9e8db87da1bd4240922b34d765 # v6
57+
uses: TriPSs/conventional-changelog-action@84dadaf2c367cb52af02737cd9c7e888807219e7 # v6
4358
with:
4459
github-token: ${{ secrets.RELEASE_PAT }}
4560
git-user-email: [email protected]
@@ -48,114 +63,25 @@ jobs:
4863
pre-commit: build/pre-commit.cjs
4964
release-count: 0
5065
version-file: "package.json, package-lock.json"
51-
52-
- name: Get appinfo data
53-
id: appinfo
54-
uses: skjnldsv/xpath-action@7e6a7c379d0e9abc8acaef43df403ab4fc4f770c # master
55-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
56-
with:
57-
filename: appinfo/info.xml
58-
expression: "//info//dependencies//nextcloud/@min-version"
59-
60-
- name: Read package.json node and npm engines version
61-
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.2
62-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
63-
id: versions
64-
# Continue if no package.json
65-
continue-on-error: true
66-
with:
67-
path: ./
68-
fallbackNode: '^20'
69-
fallbackNpm: '^9'
70-
71-
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
72-
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4
73-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
74-
with:
75-
node-version: ${{ steps.versions.outputs.nodeVersion }}
76-
77-
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
78-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
79-
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
80-
81-
- name: Set up php ${{ env.PHP_VERSION }}
82-
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2
83-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
84-
with:
85-
php-version: ${{ env.PHP_VERSION }}
86-
coverage: none
87-
env:
88-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
89-
90-
- name: Install Krankerl
91-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
92-
run: |
93-
wget https://github.com/ChristophWurst/krankerl/releases/download/v0.14.0/krankerl_0.14.0_amd64.deb
94-
sudo dpkg -i krankerl_0.14.0_amd64.deb
95-
96-
- name: Package ${{ env.APP_NAME }} ${{ steps.changelog.outputs.tag }} with krankerl
97-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
98-
run: krankerl package
99-
100-
- name: Checkout server ${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}
101-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
102-
continue-on-error: true
103-
id: server-checkout
104-
run: |
105-
NCVERSION=${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}
106-
wget https://download.nextcloud.com/server/releases/latest-$NCVERSION.zip -O build/nextcloud.zip
107-
unzip build/nextcloud.zip build/nextcloud
108-
109-
- name: Checkout server master fallback
110-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
111-
if: ${{ steps.changelog.outputs.skipped == 'false' && steps.server-checkout.outcome != 'success' }}
112-
with:
113-
submodules: true
114-
repository: nextcloud/server
115-
path: build/nextcloud
116-
117-
- name: Sign app
118-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
119-
run: |
120-
# Extracting release
121-
cd build/artifacts
122-
tar -xvf ${{ env.APP_NAME }}.tar.gz
123-
cd ../../
124-
# Setting up keys
125-
echo "${{ secrets.APP_CERT }}" > build/${{ env.APP_NAME }}.crt
126-
echo "${{ secrets.APP_PRIVATE_KEY }}" > build/${{ env.APP_NAME }}.key
127-
pwd
128-
ls -l
129-
ls -l build
130-
# Signing
131-
php build/nextcloud/occ integrity:sign-app --privateKey=../${{ env.APP_NAME }}.key --certificate=../${{ env.APP_NAME }}.crt --path=../artifacts/${{ env.APP_NAME }}
132-
# Rebuilding archive
133-
cd build/artifacts
134-
tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }}
66+
pre-release: ${{ inputs.prerelease }}
67+
pre-release-identifier: ${{ inputs.prereleaseIdentifier }}
13568

13669
- name: Push tag to releases organization
13770
if: ${{ steps.changelog.outputs.skipped == 'false' }}
13871
run: |
13972
git remote add release https://github.com/nextcloud-releases/${{ env.APP_NAME }}.git
14073
git push release ${{ steps.changelog.outputs.tag }}
14174
142-
- name: Attach tarball to github release
75+
- name: Create Release
14376
if: ${{ steps.changelog.outputs.skipped == 'false' }}
144-
uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2
145-
id: attach_to_release
146-
with:
147-
repo_token: ${{ secrets.RELEASE_PAT }}
148-
repo_name: nextcloud-releases/${{ env.APP_NAME }}
149-
file: build/artifacts/${{ env.APP_NAME }}.tar.gz
150-
asset_name: ${{ env.APP_NAME }}-${{ steps.changelog.outputs.tag }}.tar.gz
151-
tag: ${{ steps.changelog.outputs.tag }}
152-
overwrite: true
153-
154-
- name: Upload app to Nextcloud appstore
155-
if: ${{ steps.changelog.outputs.skipped == 'false' }}
156-
uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1
77+
id: create_release
78+
uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1
79+
env:
80+
GITHUB_TOKEN: ${{ secrets.RELEASE_PAT }}
15781
with:
158-
app_name: ${{ env.APP_NAME }}
159-
appstore_token: ${{ secrets.APPSTORE_TOKEN }}
160-
download_url: ${{ steps.attach_to_release.outputs.browser_download_url }}
161-
app_private_key: ${{ secrets.APP_PRIVATE_KEY }}
82+
owner: nextcloud-releases
83+
repo: ${{ env.APP_NAME }}
84+
tag_name: ${{ steps.changelog.outputs.tag }}
85+
release_name: ${{ steps.changelog.outputs.tag }}
86+
body: ${{ steps.changelog.outputs.clean_changelog }}
87+
prerelease: ${{ inputs.prerelease }}

.github/workflows/block-unconventional-commits.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,15 @@ jobs:
2727

2828
steps:
2929
- name: Checkout
30-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
30+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3131

3232
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
33+
if: ${{ github.base_ref == 'main' }}
3334
with:
3435
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36+
37+
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
38+
if: ${{ github.base_ref != 'main' }}
39+
with:
40+
allowed-commit-types: "fix,docs,style,refactor,test,build,perf,ci,chore,revert,merge" # Anything but "feat" https://github.com/webiny/action-conventional-commits/blob/8bc41ff4e7d423d56fa4905f6ff79209a78776c7/action.yml#L9C15-L9C85
41+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/dependabot-approve-merge.yml

Lines changed: 0 additions & 49 deletions
This file was deleted.

0 commit comments

Comments
 (0)