Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature/PC388-65/configuration #32

Closed
wants to merge 43 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
c0a5072
Merge branch 'development'
rubenvdlinde Jun 21, 2024
66a595b
First part of modal code cleanup
rubenvdlinde Jul 20, 2024
2cc0c4f
Fixing the icons
rubenvdlinde Jul 20, 2024
c1401d3
Fixed the zaaktype toevoegen form
rubenvdlinde Jul 21, 2024
5761144
Taken, Berichten en Klanten gecontroleerd op actie menu's
rubenvdlinde Jul 21, 2024
9fc5b56
Add the util menu's for taken, klanten, en berichten
rubenvdlinde Jul 21, 2024
aaaabc0
Fixes voor het aanmaken van taken, klanten en berichten
rubenvdlinde Jul 21, 2024
10f6745
Fix for editing klanten
rubenvdlinde Jul 21, 2024
b92965c
Eerste poging om berichten en taken te fixen
rubenvdlinde Jul 21, 2024
9c95a65
Bit more work on the util menu's
rubenvdlinde Aug 24, 2024
95180c2
Code clean up
rubenvdlinde Aug 26, 2024
11b836d
Release managment
rubenvdlinde Aug 27, 2024
ca561c1
Composer json fix
rubenvdlinde Aug 27, 2024
08a130d
Create zaakafhandelapp.csr
MWest2020 Aug 27, 2024
d1b47bb
Merge pull request #20 from ConductionNL/MWest2020-patch-2
rubenvdlinde Sep 5, 2024
ba40dd0
Update info.xml
MWest2020 Sep 6, 2024
bbf6118
Merge pull request #21 from ConductionNL/MWest2020-patch-3
MWest2020 Sep 6, 2024
5d89cd6
Create release-workflow.yaml
MWest2020 Sep 11, 2024
462e7b6
Update release-workflow.yaml
MWest2020 Sep 11, 2024
4c5f7a1
Update info.xml
MWest2020 Sep 11, 2024
8f2344f
Update info.xml
MWest2020 Sep 11, 2024
ab4a1ed
Update info.xml
MWest2020 Sep 11, 2024
240c504
Merge pull request #22 from ConductionNL/MWest2020-patch-4
MWest2020 Sep 13, 2024
4a29c2b
Bump version to 0.0.3
actions-user Sep 13, 2024
0c6d3e8
Update composer.json
MWest2020 Sep 13, 2024
76a35fb
Bump version to 0.0.4
actions-user Sep 13, 2024
36baa87
Update info.xml
MWest2020 Sep 13, 2024
4286773
Bump version to 0.0.5
actions-user Sep 13, 2024
2930ae5
Update release-workflow.yaml
MWest2020 Sep 20, 2024
fc398ee
Bump version to 0.0.6
actions-user Sep 20, 2024
effc3bb
Add the objects service
rubenvdlinde Oct 21, 2024
4953084
Merge tag 'feature/PC388-38/util-menus' of https://github.com/Conduct…
rubenvdlinde Oct 21, 2024
c127523
First work on the settings page
rubenvdlinde Oct 22, 2024
0ac4869
Updates to the settings page
rubenvdlinde Oct 22, 2024
6581f46
First fixes
rubenvdlinde Oct 22, 2024
b74e91c
Merge tag 'feature/configuration' of https://github.com/ConductionNL/…
rubenvdlinde Oct 22, 2024
e7f3a39
Solve merge conflict
rubenvdlinde Oct 22, 2024
d930f7f
Bring git back into sync
rubenvdlinde Oct 22, 2024
4194d30
Merge remote-tracking branch 'origin/feature/PC388-62/zaak-modern' in…
rubenvdlinde Oct 22, 2024
52a2a0a
Merge remote-tracking branch 'origin/development' into feature/config…
remko48 Oct 22, 2024
c13e8f1
Fixed build
remko48 Oct 22, 2024
a6d5492
Semi fixed settings page
remko48 Oct 22, 2024
6046de0
Fixed admin settings
remko48 Oct 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
196 changes: 196 additions & 0 deletions .github/workflows/release-workflow.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
name: Release Workflow

on:
push:
branches:
- master
- main
workflow_dispatch:
inputs:
version:
description: 'Version to release (leave empty to use info.xml version)'
required: false
default: ''

jobs:
release-management:
runs-on: ubuntu-latest
steps:

- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set app env
run: |
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV

- name: Get current version and increment
id: increment_version
run: |
current_version=$(grep -oP '(?<=<version>)[^<]+' appinfo/info.xml)
IFS='.' read -ra version_parts <<< "$current_version"
((version_parts[2]++))
new_version="${version_parts[0]}.${version_parts[1]}.${version_parts[2]}"
echo "NEW_VERSION=$new_version" >> $GITHUB_ENV
echo "new_version=$new_version" >> $GITHUB_OUTPUT

- name: Update version in info.xml
run: |
sed -i "s|<version>.*</version>|<version>${{ env.NEW_VERSION }}</version>|" appinfo/info.xml

- name: Commit version update
run: |
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git commit -am "Bump version to ${{ env.NEW_VERSION }}"
git push

# Step 1: Prepare the signing certificate and key
- name: Prepare Signing Certificate and Key
run: |
echo "${{ secrets.NEXTCLOUD_SIGNING_CERT }}" > signing-cert.crt
echo "${{ secrets.NEXTCLOUD_SIGNING_KEY }}" > signing-key.key

# Step 3: Install Node.js dependencies using npm
- name: Install npm dependencies
uses: actions/setup-node@v3
with:
node-version: '18.x' # Specify Node.js version

# Step 4: Install PHP extensions
- name: Set up PHP and install extensions
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: zip, gd

# Step 5: Build the node dependencies
- run: npm ci

# Step 6: Build the node dependencies
- run: npm run build

# Step 7: Build composer dependencies
- run: composer i --no-dev

# Step 8: Copy the files into the package directory
- name: Copy the package files into the package
run: |
mkdir -p package/${{ github.event.repository.name }}
rsync -av --progress \
--exclude='package' \
--exclude='.git' \
--exclude='.github' \
--exclude='.vscode' \
--exclude='docker' \
--exclude='docs' \
--exclude='node_modules' \
--exclude='/src' \
--exclude='test' \
--exclude='package-lock.json' \
--exclude='composer.lock' \
--exclude='composer-setup.php' \
--exclude='.phpunit.result.cache' \
--exclude='phpmd.xml' \
--exclude='signing-key.key' \
--exclude='package.json' \
--exclude='composer.json' \
--exclude='coverage.txt' \
--exclude='signing-cert.crt' \
--exclude='docker-compose.yml' \
--exclude='webpack.config.js' \
--exclude='.prettierrc' \
--exclude='psalm.xml' \
--exclude='phpunit.xml' \
--exclude='tsconfig.json' \
--exclude='changelog-ci-config.json' \
--exclude='jest.config.js' \
--exclude='.gitattributes' \
--exclude='.php-cs-fixer.dist.php' \
--exclude='.gitignore' \
--exclude='.eslintrc.js' \
--exclude='stylelint.config.js' \
--exclude='.babelrc' \
--exclude='.nvmrc' \
./ package/${{ github.event.repository.name }}/

# Step 9: Create the TAR.GZ archive
- name: Create Tarball
run: |
cd package && tar -czf ../nextcloud-release.tar.gz ${{ github.event.repository.name }}

# Step 10: Sign the TAR.GZ file with OpenSSL
- name: Sign the TAR.GZ file with OpenSSL
run: |
openssl dgst -sha512 -sign signing-key.key nextcloud-release.tar.gz | openssl base64 -out nextcloud-release.signature

# Step 11: Generate Git version information
- name: Git Version
id: version
uses: codacy/[email protected]
with:
release-branch: main

# Step 12: Extract repository description
- name: Extract repository description
id: repo-description
run: |
description=$(jq -r '.description' <(curl -s https://api.github.com/repos/${{ github.repository }}))
echo "REPO_DESCRIPTION=$description" >> $GITHUB_ENV

# Step 13: Run Changelog CI
- name: Run Changelog CI
if: github.ref == 'refs/heads/main'
uses: saadmk11/[email protected]
with:
release_version: ${{ env.NEW_VERSION }}
config_file: changelog-ci-config.json

# Step 14: Output the version
- name: Use the version
run: |
echo ${{ steps.version.outputs.version }}

# Step 15: Copy the package files into the package (this step seems redundant, consider removing)
- name: Copy the package files into the package
run: |
mkdir -p package/${{ github.event.repository.name }}
rsync -av --progress --exclude='package' --exclude='.git' ./ package/${{ github.event.repository.name }}/

# Step 18: Create a new release on GitHub
- name: Upload Release
uses: ncipollo/[email protected]
with:
tag: v${{ env.NEW_VERSION }}
name: Release ${{ env.NEW_VERSION }}
draft: false
prerelease: false

- name: Attach tarball to github release
uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2
id: attach_to_release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: nextcloud-release.tar.gz # Corrected spelling
asset_name: ${{ env.APP_NAME }}-${{ env.NEW_VERSION }}.tar.gz
tag: v${{ env.NEW_VERSION }}
overwrite: true

- name: Upload app to Nextcloud appstore
uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1
with:
app_name: ${{ env.APP_NAME }}
appstore_token: ${{ secrets.NEXTCLOUD_APPSTORE_TOKEN }}
download_url: https://github.com/${{ github.repository }}/releases/download/v${{ env.NEW_VERSION }}/${{ env.APP_NAME }}-${{ env.NEW_VERSION }}.tar.gz
app_private_key: ${{ secrets.NEXTCLOUD_SIGNING_KEY }}
nightly: false

- name: Verify version and contents
run: |
echo "App version: ${{ env.NEW_VERSION }}"
echo "Tarball contents:"
tar -tvf nextcloud-release.tar.gz
echo "info.xml contents:"
tar -xOf nextcloud-release.tar.gz ${{ env.APP_NAME }}/appinfo/info.xml
166 changes: 166 additions & 0 deletions .github/workflows/release-workflows.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
name: Release Workflow

on: [push]

jobs:
release-management:
runs-on: ubuntu-latest
steps:

- name: Set app env
run: |
# Split and keep last
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV

# Step 1: Checkout the code
- name: Checkout Code
uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }} # Checkout the correct branch name
fetch-depth: 0 # Fetch the whole repo history

# Step 2: Prepare the signing certificate and key
- name: Prepare Signing Certificate and Key
run: |
echo "${{ secrets.NEXTCLOUD_SIGNING_CERT }}" > signing-cert.crt
echo "${{ secrets.NEXTCLOUD_SIGNING_KEY }}" > signing-key.key

# Step 3: Install Node.js dependencies using npm
- name: Install npm dependencies
uses: actions/setup-node@v3
with:
node-version: '18.x' # Specify Node.js version

# Step 4: Install PHP extensions
- name: Set up PHP and install extensions
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: zip, gd

# Step 5: Build the node dependencies
- run: npm ci

# Step 6: Build the node dependencies
- run: npm run build

# Step 7: Build composer dependencies
- run: composer i --no-dev

# Step 8: Copy the files into the package directory, excluding .git and package itself
- name: Copy the package files into the package
run: |
mkdir -p package/zaakafhandelapp
rsync -av --progress \
--exclude='package' \
--exclude='.git' \
--exclude='.github' \
--exclude='.vscode' \
--exclude='docker' \
--exclude='docs' \
--exclude='node_modules' \
--exclude='src' \
--exclude='test' \
--exclude='package-lock.json' \
--exclude='composer.lock' \
--exclude='composer-setup.php' \
--exclude='.phpunit.result.cache' \
--exclude='phpmd.xml' \
--exclude='signing-key.key' \
--exclude='package.json' \
--exclude='composer.json' \
--exclude='coverage.txt' \
--exclude='signing-cert.crt' \
--exclude='docker-compose.yml' \
--exclude='webpack.config.js' \
--exclude='.prettierrc' \
--exclude='psalm.xml' \
--exclude='phpunit.xml' \
--exclude='tsconfig.json' \
--exclude='changelog-ci-config.json' \
--exclude='jest.config.js' \
--exclude='.gitattributes' \
--exclude='.php-cs-fixer.dist.php' \
--exclude='.gitignore' \
--exclude='.eslintrc.js' \
--exclude='stylelint.config.js' \
--exclude='.babelrc' \
--exclude='.nvmrc' \
./ package/zaakafhandelapp/

# Step 9: Create the TAR.GZ archive with code in zaakafhandelapp directory
- name: Create Tarball
run: |
cd package && tar -czf ../nexcloud-release.tar.gz zaakafhandelapp

# Step 10: Sign the TAR.GZ file with OpenSSL
- name: Sign the TAR.GZ file with OpenSSL
run: |
openssl dgst -sha512 -sign signing-key.key nexcloud-release.tar.gz | openssl base64 -out nexcloud-release.signature

# Step 11: Generate Git version information
- name: Git Version
id: version
uses: codacy/[email protected]
with:
release-branch: main

# Step 12: Extract repository description
- name: Extract repository description
id: repo-description
run: |
description=$(jq -r '.description' <(curl -s https://api.github.com/repos/${{ github.repository }}))
echo "REPO_DESCRIPTION=$description" >> $GITHUB_ENV

# Step 13: Run Changelog CI
- name: Run Changelog CI
if: github.ref == 'refs/heads/master'
uses: saadmk11/[email protected]
with:
release_version: ${{ steps.version.outputs.version }}
config_file: changelog-ci-config.json

# Step 14: Output the version
- name: Use the version
run: |
echo ${{ steps.version.outputs.version }}

# Step 15: Copy the files into the package directory, excluding .git and package itself
- name: Copy the package files into the package
run: |
mkdir -p package/zaakafhandelapp
rsync -av --progress --exclude='package' --exclude='.git' ./ package/zaakafhandelapp/

# Step 18: Create a new release on GitHub
- name: Upload Release
uses: ncipollo/[email protected]
with:
artifacts: |
LICENSE.md
nexcloud-release.tar.gz
nexcloud-release.signature
zaakafhandelapp-build.zip
zaakafhandelapp-build.tar.gz
token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ steps.version.outputs.version }}

- name: Attach tarball to github release
uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2
id: attach_to_release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: nexcloud-release.tar.gz
asset_name: ${{ env.APP_NAME }}-${{ env.APP_VERSION }}.tar.gz
tag: ${{ github.ref }}
overwrite: true

- name: Upload app to Nextcloud appstore
uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1
with:
app_name: ${{ env.APP_NAME }}
appstore_token: ${{ secrets.NEXTCLOUD_APPSTORE_TOKEN }}
download_url: ${{ steps.attach_to_release.outputs.browser_download_url }}
app_private_key: ${{ secrets.NEXTCLOUD_SIGNING_KEY }}


26 changes: 26 additions & 0 deletions .nextcloud/certificates/zaakafhandelapp.csr
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
-----BEGIN CERTIFICATE REQUEST-----
MIIEXzCCAkcCAQAwGjEYMBYGA1UEAwwPemFha2FmaGFuZGVsYXBwMIICIjANBgkq
hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnI2P93yLIINt4aOwwLO6Jn6CvbXhbbnI
ri4UieBwnGq0xDNmb//sDB+FOZOqOCqdw8Zj38ALck+W5P+4OfkPuUAjJIbGu23L
V100u+YD3m0jfkh2FSOEtqNcyLYPebW5xPdqcGXDinaxqsjqCYGgVZIyeaSTHPpv
xHEDccrPI0H0uHi1NOQH2uDTnFfzqKweFXUNI8xI9z7PAnyLnUBCLsXEe4NABpqL
pt4cwWVe/dTchYF7mr2xq4oGvmoMub09oSoaP6vzkTbr7CErew8GQ+cgJs3UfiEk
Cjgl2GT5Lk+6Fdd1hBsbHaoTbETky69VXrN57f8qiePsMMr9r4zmG30f/ESytPip
J1UjMiFmQGPrI4h6+9Vabfak6MAyJucFUwO25WsSR4X0XQUhFVpHww+WbpOa87wl
CRSutySL7tRy7vidaMwUl0Ayhyfc99lnEHwOMxJxCAyIddcC5NIv3LgbDbZ1MW9/
x7LUDDPmu8kE8QB0anKpmxA/oa44zJqifeRo6slT/A+8PvagLaXaC08jgKixbfWr
orz+RZjpHJJ0U88jR7IiB06iki5VCxxIXpq8APRtMinyrOvbOfGKFWGClm7wefiY
w8Wyv2Dk4BH7T8i7OO+jZv7ZuYRqQ0iTpMiJR2NPBxz2FaTPBRW/lH3gvT/BDdpP
PUfvh7DQiMECAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4ICAQB9pQt94oWp7h4R3GIY
1VRqqA441ETEf7WQF5+650fvrmgfAfi4ibtnYxe6mJVVUZbFabnaxzDFMW5D/D2w
j4pvX3FMaO/Bns2AgNKLfIS7Z4wG6FEPaat2sL/rCyZFR4TK+vhq0d/Iz7lb/zNs
WRZC3mEawsu0BEmR5fcckSvAM7U3D7zv+zOW/siYCpyWdhnQ7UBquIEwpQCCpzvI
KuFZIgCmqMOh3H3TPyvB/f+esn8i6pzSj4r8hKq+EHkuDoSUc8nRtO9E5SRs8lCL
yxJnbVkrJZE5vJDycnjoKBcVTLAi8S6YfAcSqV0nfawOs5lV2Del+m4oapvjG1og
8bwN3HEmZiyQJ1GF7SCQsos6hncJUed+5iIrdyGnfzq8K2AFkBoCsqZfCvUoSSt7
UmJKVP1ZjQP225P178flK+3IVeVPtUD6QbMPRLlgQrh1y+rY4e7Pnk45trOrIICU
KQcbl65TWiaZOgsbll3t+kvXw8N/7fgeeyNe26IgQGvJCSJfMiLKiezNdFkIucsa
NsMiSvln4ims3+ZNicShV0qBG+rcFSsuhM+JpM0+k8tb8iyHeKAhgNWw6PodqIRv
AFak6fR0uK0O/roI+VTDy2SXYE2Dbn4yWEBKVovN8zq2he8rmEVNiyptKKFw03s2
3StYdcaZetHMu9a8kQQ1vAwL4g==
-----END CERTIFICATE REQUEST-----
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
20
20
Loading
Loading