Compare commits

...

35 Commits

Author SHA1 Message Date
da7f10419a Temporary deploy Dune with dev branch
All checks were successful
continuous-integration/drone/tag Build is passing
2025-01-20 12:35:45 +01:00
e65dd3ee87 Update dockerfile to use postgresql version 15
All checks were successful
continuous-integration/drone/tag Build is passing
2025-01-08 10:59:41 +01:00
8797e6af7c Update Chill to v2.6.0
Some checks failed
continuous-integration/drone/tag Build is failing
2025-01-08 10:35:32 +01:00
cc3731d482 Update chill base version to 2.5.0
All checks were successful
continuous-integration/drone/tag Build is passing
2024-12-09 12:30:57 +01:00
bb264eeed2 update composer files and workflow config 2024-12-09 12:30:08 +01:00
47faf59ede Update chill root to v2.4.0
All checks were successful
continuous-integration/drone/tag Build is passing
2024-11-01 20:12:48 +01:00
441517891c Update chill base version to v2.3.0
All checks were successful
continuous-integration/drone/tag Build is passing
2024-10-30 10:38:10 +01:00
093c6fc710 Add bootstrap icons to package.json 2024-10-22 07:42:02 +02:00
87fcbd5771 Update Chill to v2.2.0 with bundles v3.1.1
All checks were successful
continuous-integration/drone/tag Build is passing
2024-10-01 10:43:53 +02:00
8fc61bfc2d Update composer and yarn files 2024-10-01 10:42:31 +02:00
42ccb32635 Update chill base app to version 2.1.0
All checks were successful
continuous-integration/drone/tag Build is passing
2024-09-24 11:59:10 +02:00
b0062cddfc Update bundles to version 3.1.0 2024-09-24 11:57:37 +02:00
207f8b9118 Update bundles version to v3.0.0-RC9
All checks were successful
continuous-integration/drone/tag Build is passing
2024-08-08 11:29:04 +02:00
73c1e7a17a Update chill-bundles to version 3.0.0-RC8
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-30 15:10:30 +02:00
e399ee3a34 Fix naming of changie files
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-25 17:06:13 +02:00
190ff0b0a6 Add changie file: upgrade chill-bundles to v3.0.0-RC7 2024-07-25 17:02:19 +02:00
cfb2dcfd31 Update chill-bundles to v3.0.0-RC7 2024-07-25 17:00:23 +02:00
d121f3343f Upgrade to chill-bundles/v3.0.0-RC6
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-23 17:22:20 +02:00
adba3b88ae Add WOPI_SERVER variable to .env file
A new environmental variable, WOPI_SERVER, has been added to the .env file. This addition is related to the configuration of the Collabora Online integration.
2024-07-18 23:14:03 +02:00
182f2fa111 release 2.0.0-RC2
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-18 16:12:54 +02:00
8a61ff2b7a Update workflow definition and configuration
The configuration for the workflow in the config/packages/workflow.yaml file has also been updated, notably by adding a marking store.
2024-07-18 16:11:04 +02:00
b6bc9e4a3a fix changelogs and description of changes 2024-07-18 13:00:40 +02:00
79e7a63941 release 2.0.0-RC1
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-18 10:41:18 +02:00
bdce8411b3 upgrade deps 2024-07-18 10:39:30 +02:00
40770834a3 switch to php8.3 and add amqp as pecl dependency 2024-07-18 10:38:44 +02:00
0cee0637c9 release 2.0.0-alpha4
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-03 14:21:18 +02:00
74ee56c960 add missing wopi configuration file 2024-07-03 14:19:55 +02:00
218b08a3c4 add graylog/gelf to image and release 2.0.0-alpha3
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-03 13:55:07 +02:00
80ae8c4302 release v2.0.0-alpha2
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-03 13:39:22 +02:00
4e1482f09a fix version
All checks were successful
continuous-integration/drone/tag Build is passing
2024-07-03 13:02:05 +02:00
96dd6e190a sign drone file 2024-07-03 13:00:34 +02:00
7e825bb46a release version 3.0.0-alpha1 2024-07-03 12:59:59 +02:00
ac051664af changie configuration 2024-07-03 12:50:40 +02:00
f2d81c46da fixes from default configuration 2024-07-03 12:45:10 +02:00
e27fcdfb71 add chill-deploy bundle + fixes 2024-07-03 12:44:55 +02:00
42 changed files with 3928 additions and 3743 deletions

3
.changes/2.0.0-RC1.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-RC1 - 2024-07-18
### Release
* upgrade to chill-bundles/3.0.0-RC5

3
.changes/2.0.0-RC2.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-RC2 - 2024-07-18
### Fixed
* Fix definition of workflow

9
.changes/2.0.0-RC3.md Normal file
View File

@@ -0,0 +1,9 @@
## 2.1.0 - 2024-07-23
### Release
* Upgrade chill to v3.0.0-RC3
* upgrade chill-bundle to v3.0.0-RC4
* Add graylog to image
* upgrade to chill-bundles/3.0.0-RC5
* Upgrade chill-bundles to v3.0.0-RC6
### Fixed
* Fix definition of workflow

3
.changes/2.0.0-RC4.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.2.0 - 2024-07-25
### Release
* Update chill-bundles to v3.0.0-RC7

3
.changes/2.0.0-RC5.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.1.0 - 2024-07-30
### Release
* Update chill-bundles to v3.0.0-RC8

3
.changes/2.0.0-RC6.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.1.0 - 2024-08-08
### Release
* Update chill-bundles to v3.0.0-RC9

3
.changes/2.0.0-alpha1.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-alpha1 - 2024-07-03
### Release
* Upgrade chill to v3.0.0-RC3

3
.changes/2.0.0-alpha2.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-alpha2 - 2024-07-03
### Release
* upgrade chill-bundle to v3.0.0-RC4

3
.changes/2.0.0-alpha3.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-alpha3 - 2024-07-03
### Release
* Add graylog to image

3
.changes/2.0.0-alpha4.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.0.0-alpha4 - 2024-07-03
### Release
* fixes

3
.changes/2.1.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.1.0 - 2024-09-24
### Release
* Update bundles version to 3.1.0

3
.changes/2.2.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.2.0 - 2024-10-01
### Release
* Bundles version updated to 3.1.1

3
.changes/2.3.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.3.0 - 2024-10-30
### Feature
* Update bundles to v3.2.0 adding gender entity feature

3
.changes/2.4.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.4.0 - 2024-11-01
### Feature
* Update chill bundles to v3.2.2: new feature gender entity"

3
.changes/2.5.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.5.0 - 2024-12-09
### Release
* Update bundles to v3.5.0

3
.changes/2.6.0.md Normal file
View File

@@ -0,0 +1,3 @@
## 2.6.0 - 2025-01-08
### Release
* Update to chill bundles v3.5.3

6
.changes/header.tpl.md Normal file
View File

@@ -0,0 +1,6 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
and is generated by [Changie](https://github.com/miniscruff/changie).

View File

35
.changie.yaml Normal file
View File

@@ -0,0 +1,35 @@
changesDir: .changes
unreleasedDir: unreleased
headerPath: header.tpl.md
changelogPath: CHANGELOG.md
versionExt: md
versionFormat: '## {{.Version}} - {{.Time.Format "2006-01-02"}}'
kindFormat: '### {{.Kind}}'
# Note: it is possible to add a `.custom.Long` text manually into the yaml file produced by `changie new`. This will add a long description.
changeFormat: >-
* {{ if and (ne .Custom.Issue "") (ne .Custom.Issue "0") }}([#{{ .Custom.Issue }}](https://gitea.champs-libres.be/Chill-project/chill-base-app-v3/issues/{{ .Custom.Issue }})) {{ end }}{{.Body}}
custom:
- key: Issue
label: Issue number (on chill-bundles repository) (optional)
optional: true
type: int
kinds:
- label: Release
auto: minor
- label: Feature
auto: minor
- label: Deprecated
auto: minor
- label: Fixed
auto: patch
- label: Security
auto: patch
- label: DX
auto: patch
- label: UX
auto: patch
newlines:
afterChangelogHeader: 1
beforeChangelogVersion: 1
endOfVersion: 1
envPrefix: CHANGIE_

13
.dockerignore Normal file
View File

@@ -0,0 +1,13 @@
vendor/*/*/vendor/*
vendor/*/*/tests/*
vendor/bin/.php*
.pgadmin4*
app/config/parameters.yml
.composer*
.git*
.yarncache/*
.node_modules/*
build/*
var/*
vendor/chill-project/chill-bundles/.psalm/*

86
.drone.yml Normal file
View File

@@ -0,0 +1,86 @@
---
kind: pipeline
type: docker
name: build-images
image_pull_secrets:
- dockerconfig
trigger:
event:
- tag
steps:
- name: build-base-image
image: plugins/docker
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
registry: h3m6q87t.gra7.container-registry.ovh.net
repo: h3m6q87t.gra7.container-registry.ovh.net/chillbasics/php-base
tag: latest
target: chill_base_php82
pull_image: true
cache_from:
- h3m6q87t.gra7.container-registry.ovh.net/chillbasics/php-base:latest
- chill/base-image:latest
- name: composer-install
image: h3m6q87t.gra7.container-registry.ovh.net/chillbasics/php-base:latest
pull: always
commands:
- composer install --no-scripts --no-interaction
depends_on:
- build-base-image
- name: build-assets
image: node:20
pull: always
commands:
- yarn install
- yarn list
- yarn run encore production
depends_on:
- composer-install
- name: build-image-php
image: plugins/docker
settings:
pull_image: true
username:
from_secret: docker_username
password:
from_secret: docker_password
registry: h3m6q87t.gra7.container-registry.ovh.net
repo: h3m6q87t.gra7.container-registry.ovh.net/chillbasics/php
tag:
- ${DRONE_TAG}
cache_from:
- h3m6q87t.gra7.container-registry.ovh.net/chillbasics/php-base:latest
- chill/base-image:latest
depends_on:
- build-assets
- composer-install
- name: build-image-nginx
image: plugins/docker
settings:
pull_image: true
username:
from_secret: docker_username
password:
from_secret: docker_password
registry: h3m6q87t.gra7.container-registry.ovh.net
repo: h3m6q87t.gra7.container-registry.ovh.net/chillbasics/nginx
tag:
- ${DRONE_TAG}
Dockerfile: docker/nginx/Dockerfile
depends_on:
- build-assets
---
kind: signature
hmac: 510f151634e776218c6135bb830480fe0c265eb1dd96c16ef640001a23f351ae
...

1
.env
View File

@@ -76,4 +76,5 @@ ADD_ADDRESS_MAP_CENTER_Z=14
# Variables for relatorio host, which generates documents
RELATORIO_HOST=
RELATORIO_PORT=
WOPI_SERVER=http://${COLLABORA_HOST}:${COLLABORA_PORT}
###< chill-project/chill-bundles ###

View File

@@ -0,0 +1,59 @@
name: Prepare release for chill app
run-name: Update composer.lock and dependencies for preparing a release
on:
push:
branches:
- 'release/**'
jobs:
update-deps:
runs-on: ubuntu-latest
steps:
- name: check out repository
uses: https://github.com/actions/checkout@v4
- name: get the previous chill version
# parse the composer.lock file using jq to get the chill version before the upgrade
id: chill-before
uses: https://github.com/sergeysova/jq-action@v2
with:
cmd: 'cat composer.lock | jq --raw-output ''.packages[] | select ( .name | contains ("chill-project/chill-bundles")) | .version'''
- name: run composer update to update composer.lock
uses: docker://gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:latest
with:
# this is where we set the command to execute
args: composer update --no-install
- name: is composer.lock changed ?
id: composer-lock-changed
run: 'echo is_composer_lock_changed=$(git diff --name-only | grep "composer\.lock" | wc -l) >> $GITHUB_OUTPUT'
- name: get the new chill version
# parse the composer.lock file using jq to get the chill version after the upgrade
id: chill-after
uses: https://github.com/sergeysova/jq-action@v2
with:
cmd: 'cat composer.lock | jq --raw-output ''.packages[] | select ( .name | contains ("chill-project/chill-bundles")) | .version'''
- name: add a changie file for the upgrade
uses: https://github.com/miniscruff/changie-action@v2
if: ${{ steps.composer-lock-changed.outputs.is_composer_lock_changed == 1 }}
with:
version: latest
args: 'new --body "Update dependencies. Chill-bundles upgraded from ${{ steps.chill-before.outputs.value }} to ${{ steps.chill-after.outputs.value }}" --kind Release --custom "Issue=0"'
- name: changie batch
if: ${{ steps.composer-lock-changed.outputs.is_composer_lock_changed == 1 }}
uses: https://github.com/miniscruff/changie-action@v2
with:
version: latest
args: 'batch auto'
- name: changie merge
if: ${{ steps.composer-lock-changed.outputs.is_composer_lock_changed == 1 }}
uses: https://github.com/miniscruff/changie-action@v2
with:
version: latest
args: 'merge'
- name: commit changed files
if: ${{ steps.composer-lock-changed.outputs.is_composer_lock_changed == 1 }}
uses: https://github.com/stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "update composer.lock and file (automatic update)"
commit_user_name: Action Bot
commit_user_email: bot@chill.social

77
CHANGELOG.md Normal file
View File

@@ -0,0 +1,77 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
and is generated by [Changie](https://github.com/miniscruff/changie).
## 2.6.0 - 2025-01-08
### Release
* Update to chill bundles v3.5.3
## 2.5.0 - 2024-12-09
### Release
* Update bundles to v3.5.0
## 2.4.0 - 2024-11-01
### Feature
* Update chill bundles to v3.2.2: new feature gender entity"
## 2.3.0 - 2024-10-30
### Feature
* Update bundles to v3.2.0 adding gender entity feature
## 2.2.0 - 2024-10-01
### Release
* Bundles version updated to 3.1.1
## 2.1.0 - 2024-09-24
### Release
* Update bundles version to 3.1.0
## 2.0.0-alpha4 - 2024-07-03
### Release
* fixes
## 2.0.0-alpha3 - 2024-07-03
### Release
* Add graylog to image
## 2.0.0-alpha2 - 2024-07-03
### Release
* upgrade chill-bundle to v3.0.0-RC4
## 2.0.0-alpha1 - 2024-07-03
### Release
* Upgrade chill to v3.0.0-RC3
## 2.1.0 - 2024-08-08
### Release
* Update chill-bundles to v3.0.0-RC9
## 2.1.0 - 2024-07-30
### Release
* Update chill-bundles to v3.0.0-RC8
## 2.2.0 - 2024-07-25
### Release
* Update chill-bundles to v3.0.0-RC7
## 2.1.0 - 2024-07-23
### Release
* Upgrade chill to v3.0.0-RC3
* upgrade chill-bundle to v3.0.0-RC4
* Add graylog to image
* upgrade to chill-bundles/3.0.0-RC5
* Upgrade chill-bundles to v3.0.0-RC6
### Fixed
* Fix definition of workflow
## 2.0.0-RC2 - 2024-07-18
### Fixed
* Fix definition of workflow
## 2.0.0-RC1 - 2024-07-18
### Release
* upgrade to chill-bundles/3.0.0-RC5

106
Dockerfile Normal file
View File

@@ -0,0 +1,106 @@
FROM php:8.3-fpm-alpine AS chill_base_php82
ENV POSTGRES_VERSION=15
# default UID for the PHP user
ARG UID=1000
ARG GID=1000
# install php extensions and deps
# apk add --no-cache --update --virtual rabbitmq-c-dev rabbitmq-c-utils gcc g++ make autoconf && pecl install amqp
RUN apk update && apk add --no-cache \
wget gnupg \
libpq-dev \
icu-dev icu-libs icu-data-full \
oniguruma-dev \
libzip libzip-dev \
linux-headers \
gcc g++ make autoconf \
bash git \
rabbitmq-c rabbitmq-c-dev \
&& docker-php-ext-install pdo_pgsql intl mbstring zip bcmath exif sockets \
&& git clone https://github.com/nikic/php-ast.git \
&& cd php-ast \
&& phpize \
&& ./configure \
&& make install \
&& echo 'extension=ast.so' > /usr/local/etc/php/php.ini \
&& cd .. && rm -rf php-ast \
&& pecl install redis \
&& docker-php-ext-enable redis \
&& pecl install amqp \
&& docker-php-ext-enable amqp \
&& apk add libpng-dev libjpeg-turbo-dev freetype-dev \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install -j$(nproc) gd \
&& apk add postgresql${POSTGRES_VERSION}-client \
&& apk del --purge wget gnupg libpq-dev icu-dev oniguruma-dev libzip-dev linux-headers gcc g++ make autoconf
RUN { \
echo ""; \
echo "memory_limit = 512M"; \
echo ""; \
} >> /usr/local/etc/php/conf.d/memory_limit.ini
RUN { \
echo ""; \
echo "[Date]"; \
echo "date.timezone = Europe/Brussels"; \
echo ""; \
} >> /usr/local/etc/php/conf.d/date.ini
# temporary fix, while php-cs-fixer has conflict dependencies
# with chill
RUN curl -o /usr/local/bin/php-cs-fixer https://cs.symfony.com/download/php-cs-fixer-v3.phar \
&& chmod +x /usr/local/bin/php-cs-fixer
# to make php-cs-fixer works with php 8.2
ENV PHP_CS_FIXER_IGNORE_ENV=1
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
ENV COMPOSER_ALLOW_SUPERUSER=1
ENV COMPOSER_MEMORY_LIMIT=-1
# shell bash preference
RUN sed -i " \
s|root:x:0:0:root:/root:/bin/ash|root:x:0:0:root:/root:/bin/bash|g; \
s|postgres:x:70:70:PostgreSQL user:/var/lib/postgresql:/bin/sh|postgres:x:70:70:PostgreSQL user:/var/lib/postgresql:/bin/bash|g" \
/etc/passwd
# chmod on redis.so
RUN chmod 755 -R /usr/local/lib/php/extensions/
WORKDIR /var/www/app
CMD ["php-fpm"]
FROM chill_base_php82 AS chill_php82
# copy directories
COPY ./bin /var/www/app/bin/.
COPY ./composer.* /var/www/app/
COPY ./config /var/www/app/config/.
COPY ./migrations /var/www/app/migrations/.
COPY ./public /var/www/app/public/.
COPY ./src /var/www/app/src/.
COPY ./templates /var/www/app/templates/.
COPY ./translations /var/www/app/translations/.
COPY ./vendor /var/www/app/vendor/.
COPY ./.env /var/www/app/.env
# import the manifest.json file
COPY ./public/build/manifest.json /var/www/app/public/build/manifest.json
ADD ./entrypoint.sh /.
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
ENV PHP_FPM_USER=www-data \
PHP_FPM_GROUP=www-data \
COMPOSER_HOME=/var/www/app/.composer \
SESSION_LIFETIME=10800
CMD [ "php-fpm" ]

View File

@@ -4,12 +4,14 @@
"minimum-stability": "stable",
"prefer-stable": true,
"require": {
"php": ">=7.2.5",
"php": ">=8.2.0",
"ext-ctype": "*",
"ext-iconv": "*",
"champs-libres/wopi-bundle": "dev-master@dev",
"champs-libres/wopi-lib": "dev-master@dev",
"chill-project/chill-bundles": "v3.0.0-RC3",
"chill-project/chill-bundles": "dev-user_edit_form@dev",
"chill-project/chill-deploy": "^1.0",
"graylog2/gelf-php": "^2.0",
"symfony/console": "5.4.*",
"symfony/dotenv": "5.4.*",
"symfony/flex": "^1.17|^2",

2071
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
lexik_jwt_authentication:
secret_key: '%env(resolve:JWT_SECRET_KEY)%'
public_key: '%env(resolve:JWT_PUBLIC_KEY)%'
pass_phrase: '%env(JWT_PASSPHRASE)%'
pass_phrase: '%env(JWT_PASSPHRASE)%'

View File

@@ -0,0 +1,8 @@
lexik_jwt_authentication:
# required for wopi - recommended duration
token_ttl: 36000
token_extractors:
query_parameter:
enabled: true
name: access_token

View File

@@ -1,7 +1,4 @@
framework:
default_locale: en
translator:
default_path: '%kernel.project_dir%/translations'
fallbacks:
- en
providers:

View File

@@ -0,0 +1,3 @@
wopi:
server: "%env(resolve:WOPI_SERVER)%"
enable_lock: false

View File

@@ -1,2 +1,279 @@
framework:
workflows: null
workflows:
vendee_internal:
type: state_machine
metadata:
related_entity:
- Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWorkEvaluationDocument
- Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWork
- Chill\DocStoreBundle\Entity\AccompanyingCourseDocument
label:
fr: 'Suivi CD85'
support_strategy: Chill\MainBundle\Workflow\RelatedEntityWorkflowSupportsStrategy
marking_store:
service: Chill\MainBundle\Workflow\EntityWorkflowMarkingStore
initial_marking: 'initial'
places:
initial:
metadata:
label:
fr: Étape initiale
attenteModification:
metadata:
label:
fr: En attente de modification du document
validationFilterInputLabels:
forward: {fr: Modification effectuée}
backward: {fr: Pas de modification effectuée}
neutral: {fr: Autre}
attenteMiseEnForme:
metadata:
label:
fr: En attente de mise en forme
validationFilterInputLabels:
forward: {fr: Mise en forme terminée}
backward: {fr: Pas de mise en forme effectuée}
neutral: {fr: Autre}
attenteVisa:
metadata:
label:
fr: En attente de visa
validationFilterInputLabels:
forward: {fr: Visa accordé}
backward: {fr: Visa refusé}
neutral: {fr: Autre}
attenteTraitement:
metadata:
label:
fr: En attente de traitement
validationFilterInputLabels:
forward: {fr: Traitement terminé favorablement}
backward: {fr: Traitement terminé défavorablement}
neutral: {fr: Autre}
attenteEnvoi:
metadata:
label:
fr: En attente d'envoi
validationFilterInputLabels:
forward: {fr: Document envoyé}
backward: {fr: Document non envoyé}
neutral: {fr: Autre}
attenteValidationMiseEnForme:
metadata:
label:
fr: En attente de validation de la mise en forme
validationFilterInputLabels:
forward: {fr: Validation de la mise en forme}
backward: {fr: Refus de validation de la mise en forme}
neutral: {fr: Autre}
attenteReceptionExternal:
metadata:
isSentExternal: true
onExternalView: clotureApresLectureEnvoiExterne
label:
fr: En attente d'ouverture par un destinataire externe
validationFilterInputLabels:
forward: {fr: Document reçu par un destinataire externe}
backward: {fr: Document non reçu par un destinataire externe}
neutral: {fr: Autre}
annule:
metadata:
isFinal: true
isFinalPositive: false
label:
fr: Annulé
final:
metadata:
isFinal: true
isFinalPositive: true
label:
fr: Finalisé
transitions:
# transition qui avancent
demandeModificationDocument:
from:
- initial
to: attenteModification
metadata:
label:
fr: Demande de modification du document
isForward: true
demandeMiseEnForme:
from:
- initial
- attenteModification
to: attenteMiseEnForme
metadata:
label:
fr: Demande de mise en forme
isForward: true
demandeValidationMiseEnForme:
from:
- attenteMiseEnForme
to: attenteValidationMiseEnForme
metadata:
label:
fr: Demande de validation de la mise en forme
isForward: true
demandeVisa:
from:
- initial
- attenteModification
- attenteMiseEnForme
- attenteValidationMiseEnForme
- attenteTraitement
to: attenteVisa
metadata:
label:
fr: Demande de visa
isForward: true
demandeTraitement:
from:
- initial
- attenteModification
- attenteMiseEnForme
- attenteValidationMiseEnForme
- attenteVisa
to: attenteTraitement
metadata:
label: {fr: Demande de traitement}
isForward: true
demandeEnvoi:
from:
- initial
- attenteModification
- attenteMiseEnForme
- attenteValidationMiseEnForme
- attenteVisa
- attenteTraitement
to: attenteEnvoi
metadata:
label: {fr: Demande d'envoi}
isForward: true
demandeEnvoiExterne:
from:
- initial
- attenteModification
- attenteMiseEnForme
- attenteValidationMiseEnForme
- attenteVisa
- attenteTraitement
to: attenteReceptionExternal
metadata:
label: {fr: Envoi sécurisé par courrier électronique}
isForward: true
clotureApresLectureEnvoiExterne:
from:
- attenteReceptionExternal
to:
- final
metadata:
transitionGuard: system
isForward: true
label: {fr: Consultation de l'envoi sécurisé}
annulation:
from:
- initial
- attenteModification
- attenteMiseEnForme
- attenteValidationMiseEnForme
- attenteVisa
- attenteTraitement
- attenteEnvoi
to: annule
metadata:
label: {fr: Annulation}
isForward: false
transitionGuard: 'system+only-dest' # can be 'system+only-dest' or 'only-dest' (only-dest is default)
# transitions qui répètent l'étape
demandeMiseEnFormeSupplementaire:
from:
- attenteMiseEnForme
- attenteValidationMiseEnForme
to: attenteMiseEnForme
metadata:
label: {fr: Demande de mise en forme supplémentaire}
demandeVisaSupplementaire:
from:
- attenteVisa
to: attenteVisa
metadata:
label: {fr: Demande de visa supplémentaire}
isForward: true
demandeTraitementSupplementaire:
from:
- attenteTraitement
to: attenteTraitement
metadata:
label: {fr: Demande de traitement supplémentaire}
# transitions qui renvoient vers une étape précédente
refusEtModificationDocument:
from:
- attenteVisa
- attenteTraitement
- attenteEnvoi
to: attenteModification
metadata:
label:
fr: Refus et demande de modification du document
isForward: false
refusEtDemandeMiseEnForme:
from:
- attenteVisa
- attenteTraitement
- attenteEnvoi
to: attenteMiseEnForme
metadata:
label: {fr: Refus et demande de mise en forme}
isForward: false
refusEtDemandeVisa:
from:
- attenteEnvoi
to: attenteVisa
metadata:
label: {fr: Refus et demande de visa}
isForward: false
refusEtDemandeTraitement:
from:
- attenteEnvoi
to: attenteTraitement
metadata:
label: {fr: Refus et demande de traitement}
isForward: false
# transition vers final
initialToFinal:
from:
- initial
to: final
metadata:
label: {fr: Clotûre immédiate et cloture positive}
isForward: true
attenteMiseEnFormeToFinal:
from:
- attenteMiseEnForme
- attenteValidationMiseEnForme
to: final
metadata:
label: {fr: Mise en forme terminée et cloture positive}
isForward: true
attenteVisaToFinal:
from:
- attenteVisa
to: final
metadata:
label: {fr: Accorde le visa et cloture positive}
isForward: true
attenteTraitementToFinal:
from:
- attenteTraitement
to: final
metadata:
label: {fr: Traitement terminé et cloture positive}
isForward: true
attenteEnvoiToFinal:
from:
- attenteEnvoi
to: final
metadata:
label: {fr: Envoyé et cloture positive}
isForward: true

View File

@@ -0,0 +1,2 @@
CREATE EXTENSION UNACCENT;

View File

@@ -0,0 +1,8 @@
FROM docker.elastic.co/logstash/logstash-oss:8.1.0-amd64
RUN \
bin/logstash-plugin install logstash-output-gelf \
&& bin/logstash-plugin install logstash-input-gelf
COPY ./pipeline /usr/share/logstash/pipeline/

View File

@@ -0,0 +1,16 @@
input {
gelf {
# input for php logs
port => 12201
add_field => [ 'source', "php" ]
}
}
filter {
}
output {
stdout { }
}

10
docker/nginx/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM nginx
COPY ./public /var/www/app/public
# gz encode builded files
RUN gzip -9 -k -f -r /var/www/app/public/build/*
COPY ./docker/nginx/default.conf /etc/nginx/conf.d/default.conf

71
docker/nginx/default.conf Normal file
View File

@@ -0,0 +1,71 @@
upstream phpfcgi {
server php:9000;
# server unix:/var/run/php5-fpm.sock; #for PHP-FPM running on UNIX socket
}
server {
listen 80;
# only for getting traffic from collabora, when opening nginx:8001
listen 8001;
#server_name symfony4;
root /var/www/app/public;
error_log /dev/stderr;
access_log /dev/stdout main;
location / {
index index.php;
try_files $uri /index.php$is_args$args;
}
location /build/ {
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
gzip_static on;
gzip_types
application/atom+xml
application/geo+json
application/javascript
application/x-javascript
application/json
application/ld+json
application/manifest+json
application/rdf+xml
application/rss+xml
application/xhtml+xml
application/xml
font/eot
font/otf
font/ttf
image/svg+xml
text/css
text/javascript
text/plain
text/xml;
}
location ~ ^/index\.php(/|$) {
fastcgi_pass phpfcgi;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param HTTPS off;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
proxy_buffer_size 16k;
proxy_busy_buffers_size 16k;
http2_push_preload on;
}
location ~ \.php$ {
return 404;
}
}

View File

@@ -0,0 +1,82 @@
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /dev/stdout main;
error_log /dev/stderr;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip off;
#include /etc/nginx/conf.d/*.conf;
# permet l'upload de fichiers
client_max_body_size 3M;
upstream phpfcgi {
server php:9000;
# server unix:/var/run/php5-fpm.sock; #for PHP-FPM running on UNIX socket
}
server {
listen 80;
listen 8001;
#server_name symfony4;
root /var/www/app/public;
error_log /dev/stderr;
access_log /dev/stdout main;
location / {
index index.php;
try_files $uri /index.php$is_args$args;
}
location /build/ {
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
}
location ~ ^/index\.php(/|$) {
fastcgi_pass phpfcgi;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param HTTPS off;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
proxy_buffer_size 16k;
proxy_busy_buffers_size 16k;
}
location ~ \.php$ {
return 404;
}
}
}

56
entrypoint.sh Executable file
View File

@@ -0,0 +1,56 @@
#!/bin/bash
#immediatly exit if a command fails:
set -e
# waiting for the database to be ready
if [ -z "${DATABASE_HOST}" ]; then
while ! timeout 1 bash -c "cat < /dev/null > /dev/tcp/${DATABASE_HOST}/${DATABASE_PORT}"
do
echo "$(date) : waiting one second for database";
sleep 1;
done
echo "$(date) : the database is ready";
else
echo "we assume the database is ready";
fi
if [ $(id -u) = "0" ]; then
{ \
echo "[www]"; \
echo ""; \
echo "user=${PHP_FPM_USER}"; \
echo "group=${PHP_FPM_GROUP}"; \
} > /usr/local/etc/php-fpm.d/zz-user.conf
fi
{ \
echo ""; \
echo "session.save_handler = redis" ; \
echo "session.save_path = \"tcp://${REDIS_HOST}:${REDIS_PORT}?db=10\"" ; \
echo "session.gc_maxlifetime = ${SESSION_LIFETIME}" ; \
} >> /usr/local/etc/php/conf.d/custom.ini
if [ "${APP_ENV}" = "prod" ]; then
composer dump-env "${APP_ENV}"
chmod +r /var/www/app/.env.local.php
if [ "${PREVENT_MIGRATIONS}" != "true" ]; then
php /var/www/app/bin/console doctrine:migrations:status
php /var/www/app/bin/console doctrine:migrations:migrate -n
php /var/www/app/bin/console messenger:setup-transports
php /var/www/app/bin/console chill:db:sync-views
fi
fi
if [ "${CLEAR_CACHE}" != "false" ]; then
#prepare cache
php /var/www/app/bin/console cache:clear --no-warmup
chgrp ${PHP_FPM_GROUP} /var/www/app/var/cache -R && chmod g+rw /var/www/app/var/cache -R
chgrp ${PHP_FPM_GROUP} /var/www/app/var/log -R && chmod g+rw /var/www/app/var/log -R
fi
exec "${@}"

View File

@@ -10,5 +10,8 @@
"specs-build": "yaml-merge vendor/chill-project/chill-bundles/src/Bundle/ChillMainBundle/chill.api.specs.yaml vendor/chill-project/chill-bundles/src/Bundle/ChillPersonBundle/chill.api.specs.yaml vendor/chill-project/chill-bundles/src/Bundle/ChillCalendarBundle/chill.api.specs.yaml vendor/chill-project/chill-bundles/src/Bundle/ChillThirdPartyBundle/chill.api.specs.yaml vendor/chill-project/chill-bundles/src/Bundle/ChillDocStoreBundle/chill.api.specs.yaml> templates/api/specs.yaml",
"specs-validate": "swagger-cli validate templates/api/specs.yaml",
"specs": "yarn run specs-build && yarn run specs-validate"
},
"dependencies": {
"bootstrap-icons": "^1.11.3"
}
}

View File

@@ -35,6 +35,28 @@
"post-install-chill.sh"
]
},
"chill-project/chill-deploy": {
"version": "1.0",
"recipe": {
"repo": "gitlab.com/Chill-Projet/chill-recipes",
"branch": "main",
"version": "1.0",
"ref": "2d916e260041fca4852a8887ff113667c6297046"
},
"files": [
".gitea/workflows/release/update-composer-lock.yaml",
"docker/db/docker-entrypoint-initdb.d/0000-add-extensions.sql",
"docker/logstash/Dockerfile",
"docker/logstash/pipeline/logstash.conf",
"docker/nginx/Dockerfile",
"docker/nginx/default.conf",
"docker/nginx/nginx.with-collabora.conf",
"Dockerfile",
".dockerignore",
"entrypoint.sh",
".drone.yml"
]
},
"doctrine/annotations": {
"version": "1.14",
"recipe": {

4592
yarn.lock

File diff suppressed because it is too large Load Diff