Skip to content

WIP: Release/3.0.0 #251

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

Draft
wants to merge 66 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
e18c16d
Gathered code repositories into the API repository
tuj Jun 25, 2025
9faf049
4565: Fixed dependencies issues in prod
tuj Jun 25, 2025
a1a3f75
4565: Fixed issues raised by ci
tuj Jun 25, 2025
a5df4f8
4565: Fixed markdown commands
tuj Jun 25, 2025
e0617bc
4565: Applied namespaces to controllers
tuj Jun 30, 2025
14d8d5f
Merge pull request #250 from aroskanalen/feature/mono-repository
tuj Jun 30, 2025
9dc462c
4565: Changed to vite 7 and rolldown
tuj Jun 30, 2025
70ac049
Merge pull request #252 from os2display/feature/vite-7-rolldown
tuj Jun 30, 2025
4744b2a
4565: Added ADRs 008, 009
tuj Jun 30, 2025
62532dc
Update docs/adr/009-remove-remote-components.md
tuj Jun 30, 2025
232c067
4565: Fixed issues raised in review
tuj Jun 30, 2025
ed8299d
4565: Fixed markdown issues
tuj Jun 30, 2025
cb5d826
4565: Applied new templates for github actions
tuj Jul 1, 2025
7d8b35d
4565: Added rules to php cs fixer
tuj Jul 1, 2025
fd06733
Update docs/adr/008-mono-repository.md
tuj Jul 1, 2025
7e84877
Update docs/adr/008-mono-repository.md
tuj Jul 1, 2025
ff33c3b
4565: Applied coding standards
tuj Jul 1, 2025
99abe14
Merge pull request #253 from os2display/feature/4565-adr
tuj Jul 1, 2025
a2ea523
Merge branch 'release/3.0.0' into feature/apply-templates
tuj Jul 1, 2025
9766da9
4565: Fixed editorconfig for config/ yaml files
tuj Jul 1, 2025
39c8f70
4565: Applied prettier styles to assets. Added changelog. Removed tests
tuj Jul 1, 2025
7af9f7a
4565: Applied coding standards to scss,css
tuj Jul 1, 2025
d06d414
4565: Applied coding standards to twig files
tuj Jul 1, 2025
e623032
4565: Applied yaml linting
tuj Jul 1, 2025
79193d9
4565: Cleanup
tuj Jul 1, 2025
68a1c17
4565: Added composer install to audit check
tuj Jul 1, 2025
3100b6b
4565: Updated PHP requirements
tuj Jul 1, 2025
f290167
4565: Updated api spec. Reverted change to yaml workflow
tuj Jul 1, 2025
354e80e
Merge pull request #254 from os2display/feature/apply-templates
tuj Jul 1, 2025
2a3d7bc
4565: Added playwright github action
tuj Jul 1, 2025
8afd022
4565: Fixed npm run build
tuj Jul 1, 2025
b3e99c8
4565: Fixed playwright github setup. Added test readme. Changed to @v…
tuj Jul 2, 2025
2413ff0
4565: Changed to a traeficless setup
tuj Jul 3, 2025
8389d8a
4565: Added composer install
tuj Jul 3, 2025
0d29dca
4565: Split pr.yaml into more files
tuj Jul 3, 2025
8dd2101
4565: Set COMPOSE_USER
tuj Jul 3, 2025
c6cce53
4565: Changed playwright container
tuj Jul 3, 2025
b92d561
4565: Added default login methods to .env
tuj Jul 3, 2025
73ecbd5
4565: Removed typos
tuj Jul 3, 2025
32ec83d
4565: Fixed issues with tests
tuj Jul 3, 2025
118e965
4565: Applied coding standards
tuj Jul 3, 2025
a551ed6
4565: Added retries to playwright action
tuj Jul 3, 2025
f4bfc38
4565: Removed retry
tuj Jul 4, 2025
c3deee2
4565: Started work on refactor
tuj Jul 5, 2025
6e8c93f
4565: Fixed tests
tuj Jul 5, 2025
ae4e327
Started work on refactor
tuj Aug 1, 2025
7d717d9
Merge branch 'feature/playwright-actions-refactor' into feature/playw…
tuj Aug 1, 2025
22602cb
4565: add development documentation
Aug 1, 2025
96ac858
Update README.md
sinejespersen Aug 1, 2025
0e65fb6
4565: bash script argument and error handling
Aug 1, 2025
70aca23
4565: documentation of test script added
Aug 1, 2025
393dbbc
4565: markdownlint
Aug 1, 2025
e4d1dc9
Merge pull request #258 from os2display/feature/4565-a-bit-of-documen…
tuj Aug 4, 2025
0aeccc4
Merge pull request #259 from os2display/feature/4565-test-documentati…
tuj Aug 7, 2025
9bd0560
4565: Fixed campaign test
tuj Aug 7, 2025
31beaa9
4565: Reverted to use swc instead of oxc
tuj Aug 7, 2025
4d55a07
4565: Added esbuild
tuj Aug 7, 2025
6907751
4565: Test adjustments
tuj Aug 7, 2025
7279552
4565: Reverted how config is loaded in client and admin
tuj Aug 7, 2025
ad852cd
4565: Fixed tests
tuj Aug 7, 2025
9cf6d76
4565: Worked on test refactor
tuj Aug 8, 2025
8bdc736
4565: Fixed playlist and media tests
tuj Aug 8, 2025
a27704f
4565: Fixed screen-groups and screen tests
tuj Aug 8, 2025
bb7976e
4565: Fixed remaining tests
tuj Aug 9, 2025
f33a1bd
4565: Applied coding standards
tuj Aug 9, 2025
f0b2d0a
Merge pull request #256 from os2display/feature/playwright-actions
tuj Aug 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 1 addition & 2 deletions .docker/nginx.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ events {
worker_connections 1024;
}


http {
proxy_temp_path /tmp/proxy_temp;
client_body_temp_path /tmp/client_temp;
Expand All @@ -18,7 +17,7 @@ http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

set_real_ip_from 172.16.0.0/8;
set_real_ip_from 172.16.0.0/16;
real_ip_recursive on;
real_ip_header X-Forwarded-For;

Expand Down
7 changes: 7 additions & 0 deletions .docker/templates/default.conf.template
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ server {

root ${NGINX_WEB_ROOT};

client_max_body_size ${NGINX_MAX_BODY_SIZE};

# This also needs to be set in the single server tag and not only in http.
set_real_ip_from 172.16.0.0/16;
real_ip_recursive on;
real_ip_header X-Forwarded-For;

location / {
# try to serve file directly, fallback to index.php
try_files $uri /index.php$is_args$args;
Expand Down
33 changes: 0 additions & 33 deletions .docker/vhost.conf

This file was deleted.

12 changes: 6 additions & 6 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Drupal editor configuration normalization
# Editor configuration normalization
# @see http://editorconfig.org/

# This is the top-most .editorconfig file; do not search in parent directories.
Expand All @@ -8,13 +8,13 @@ root = true
[*]
end_of_line = LF
indent_style = space
indent_size = 4
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.{js,scss}]
indent_size = 2
[config/**.{yml,yaml}]
indent_size = 4

[docker-compose*.yml]
indent_size = 2
[*.php]
indent_size = 4
26 changes: 24 additions & 2 deletions .env
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
COMPOSE_PROJECT_NAME=displayapiservice
COMPOSE_DOMAIN=displayapiservice.local.itkdev.dk
COMPOSE_PROJECT_NAME=display
COMPOSE_DOMAIN=display.local.itkdev.dk
ITKDEV_TEMPLATE=symfony-6

# In all environments, the following files are loaded if they exist,
# the latter taking precedence over the former:
Expand Down Expand Up @@ -108,3 +109,24 @@ EVENTDATABASE_API_V2_CACHE_EXPIRE_SECONDS=300

TRACK_SCREEN_INFO=false
TRACK_SCREEN_INFO_UPDATE_INTERVAL_SECONDS=300

###> Admin configuration ###
### Will be injected in the html of the admin page.
ADMIN_REJSEPLANEN_APIKEY=
ADMIN_SHOW_SCREEN_STATUS=false
ADMIN_TOUCH_BUTTON_REGIONS=false
ADMIN_LOGIN_METHODS='[{"type":"username-password","enabled":true,"provider":"username-password","label":""}]'
ADMIN_ENHANCED_PREVIEW=false
###< Admin configuration ###

###> Client configuration ###
### Will be injected in the html of the client page.
CLIENT_LOGIN_CHECK_TIMEOUT=20000
CLIENT_REFRESH_TOKEN_TIMEOUT=300000
CLIENT_RELEASE_TIMESTAMP_INTERVAL_TIMEOUT=600000
CLIENT_SCHEDULING_INTERVAL=60000
CLIENT_PULL_STRATEGY_INTERVAL=90000
CLIENT_COLOR_SCHEME='{"type":"library","lat":56.0,"lng":10.0}'
CLIENT_DEBUG=false
CLIENT_LOGGING='[]'
###< Client configuration ###
6 changes: 3 additions & 3 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#### Link to ticket
#### Link to issue

Please add a link to the ticket being addressed by this change.
Please add a link to the issue being addressed by this change.

#### Description

Expand All @@ -17,7 +17,7 @@ If your change affects the user interface you should include a screenshot of the
- [ ] My code passes our static analysis suite.
- [ ] My code passes our continuous integration process.

If your code does not pass all the requirements on the checklist you have to add a comment explaining why this change
If your code does not pass all the requirements on the checklist you have to add a comment explaining why this change
should be exempt from the list.

#### Additional comments or questions
Expand Down
50 changes: 50 additions & 0 deletions .github/workflows/apispec.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
on: pull_request

name: Api Spec

jobs:
apispec:
runs-on: ubuntu-latest
name: API Specification validation
strategy:
fail-fast: false
matrix:
php: ["8.3"]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 2

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php}}
extensions: apcu, ctype, iconv, imagick, json, redis, soap, xmlreader, zip
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

- name: Cache composer dependencies
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ matrix.php }}-composer-

- name: Install Dependencies
run: composer install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist

- name: Export specifications (yaml)
run: bin/console api:openapi:export --yaml --output=public/api-spec-v2.yaml --no-interaction

- name: Check for changes in specifications (yaml)
run: git diff --diff-filter=ACMRT --exit-code public/api-spec-v2.yaml

- name: Export specifications (json)
run: bin/console api:openapi:export --output=public/api-spec-v2.json --no-interaction

- name: Check for changes in specifications (json)
run: git diff --diff-filter=ACMRT --exit-code public/api-spec-v2.json
29 changes: 29 additions & 0 deletions .github/workflows/changelog.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/changelog.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Changelog
###
### Checks that changelog has been updated

name: Changelog

on:
pull_request:

jobs:
changelog:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 2

- name: Git fetch
run: git fetch

- name: Check that changelog has been updated.
run: git diff --exit-code origin/${{ github.base_ref }} -- CHANGELOG.md && exit 1 || exit 0
68 changes: 68 additions & 0 deletions .github/workflows/composer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/composer.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Composer
###
### Validates composer.json and checks that it's normalized.
###
### #### Assumptions
###
### 1. A docker compose service named `phpfpm` can be run and `composer` can be
### run inside the `phpfpm` service.
### 2. [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize)
### is a dev requirement in `composer.json`:
###
### ``` shell
### docker compose run --rm phpfpm composer require --dev ergebnis/composer-normalize
### ```
###
### Normalize `composer.json` by running
###
### ``` shell
### docker compose run --rm phpfpm composer normalize
### ```

name: Composer

env:
COMPOSE_USER: runner

on:
pull_request:
push:
branches:
- main
- develop

jobs:
composer-validate:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v4
- run: |
docker network create frontend
docker compose run --rm phpfpm composer validate --strict

composer-normalized:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v4
- run: |
docker network create frontend
docker compose run --rm phpfpm composer install
docker compose run --rm phpfpm composer normalize --dry-run

composer-audit:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v4
- run: |
docker network create frontend
docker compose run --rm phpfpm composer audit --locked
40 changes: 40 additions & 0 deletions .github/workflows/composer_install.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
on: pull_request

name: Composer install

jobs:
test-composer-install:
runs-on: ubuntu-latest
env:
COMPOSER_ALLOW_SUPERUSER: 1
strategy:
fail-fast: false
matrix:
php: ["8.3"]
name: Composer install in prod mode (PHP ${{ matrix.php}})
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php}}
extensions: apcu, ctype, iconv, imagick, json, redis, soap, xmlreader, zip
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

- name: Cache composer dependencies
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ matrix.php }}-composer-

- name: "[prod] Composer install with exported .env variables"
run: |
set -a && source .env && set +a
APP_ENV=prod composer install --no-dev -o
57 changes: 57 additions & 0 deletions .github/workflows/doctrine.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
on: pull_request

name: Doctrine

jobs:
validate-doctrine-shema:
runs-on: ubuntu-latest
env:
DATABASE_URL: mysql://db:[email protected]:3306/db?serverVersion=mariadb-10.5.13
strategy:
fail-fast: false
matrix:
php: ["8.3"]
name: Validate Schema (PHP ${{ matrix.php}})
services:
mariadb:
image: mariadb:10.5.13
env:
MYSQL_USER: db
MYSQL_PASSWORD: db
MYSQL_DATABASE: db
MYSQL_ROOT_PASSWORD: db
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php}}
extensions: apcu, ctype, iconv, imagick, json, redis, soap, xmlreader, zip
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

- name: Cache composer dependencies
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ matrix.php }}-composer-

- name: "Composer install with exported .env variables"
run: |
set -a && source .env && set +a
APP_ENV=prod composer install --no-dev -o

- name: Run Doctrine Migrations
run: APP_ENV=prod php bin/console doctrine:migrations:migrate --no-interaction

- name: Validate Doctrine schema
run: APP_ENV=prod php bin/console doctrine:schema:validate
2 changes: 1 addition & 1 deletion .github/workflows/github_build_release.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
on:
push:
tags:
- '*.*.*'
- "*.*.*"

name: Create Github Release

Expand Down
Loading
Loading