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

Build and publish test container #177

Merged
merged 52 commits into from
Feb 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
ca59ff4
GHA: Add action to build a test image
quartje Dec 7, 2023
8f49c06
Docker: Set SetEnv HTTPS on in Apache
quartje Dec 13, 2023
a4136d8
Rearange the ci/qa folder and its contents
MKodde Dec 19, 2023
33c1808
Remove Homestead from the project
MKodde Dec 19, 2023
c1e4890
Remove build folder
MKodde Dec 19, 2023
465440c
Remove the code coverage metric from PHPUnit
MKodde Feb 7, 2024
784f9ff
Move .env vars to openconext/parameters.yaml
MKodde Dec 19, 2023
9632063
Move config from SF3 to SF4/5 standard
MKodde Jan 2, 2024
1c9c301
Move assets to ./assets folder
MKodde Jan 2, 2024
8ecd619
Update Composer dependencies to run SF 6.4
MKodde Jan 2, 2024
00fed4f
Get the application back online
MKodde Jan 8, 2024
3e597cc
Call the correct method
MKodde Jan 8, 2024
edcddce
Adhere to PHPStan levels 1..3
MKodde Jan 8, 2024
05f0bca
Adhere to PHPStan levels 4..6
MKodde Jan 8, 2024
3caff6e
Adhere to PHPStan levels 7..9
MKodde Jan 8, 2024
5321b99
Remove http downgrade logic
MKodde Jan 9, 2024
3f2de03
Repair post upgrade defects
MKodde Jan 9, 2024
0a94c62
Install and configure incenteev parameters
MKodde Jan 9, 2024
bc1433a
Install Yarn dependencies when running integration tests
MKodde Jan 9, 2024
3e3b49c
Repair code after running PHP CS
MKodde Jan 9, 2024
d6a52fd
Repair (non existing) PHP unit tests
MKodde Jan 10, 2024
89bee4d
Address PHPMD issues
MKodde Jan 10, 2024
58e594f
Add the missing phpstan.neon file
MKodde Jan 10, 2024
2089db3
Ignore the /coverage folder
MKodde Jan 10, 2024
9680359
Run the acceptance tests on GHA
MKodde Jan 10, 2024
2bc14fd
Simplify the Kernel
MKodde Jan 10, 2024
38297c1
Update Yarn dependencies
MKodde Jan 15, 2024
44ab284
Implement strict typing throughout the app
MKodde Jan 15, 2024
f552104
Move from tslint to eslint
MKodde Jan 15, 2024
285c9fd
Rename App namespace to Surfnet/Tiqr
MKodde Jan 15, 2024
2d87677
Exclude behat tests from builds
MKodde Jan 15, 2024
e55242d
Call the correct validate script
MKodde Jan 18, 2024
202cefc
Clean the .gitignore
MKodde Jan 18, 2024
24a04ef
Clean up the RegistrationCommand
MKodde Jan 18, 2024
bec6a5e
Docker: Make the docker image php82 compatible
quartje Jan 22, 2024
c563bcc
GHA tag release workflow: Use php82 branch of the build script
quartje Jan 22, 2024
80f61d4
Favor Command::SUCCESS over return 0
MKodde Jan 23, 2024
574d1eb
Replace Annotation routes for Attribute NS
MKodde Jan 23, 2024
6b308ee
Improve demo SP phpdoc
MKodde Jan 23, 2024
ce29adc
Remove App\Controller references
MKodde Jan 23, 2024
6e14983
Remove `use function` import statements
MKodde Jan 23, 2024
0d7b2cb
Translation error in otp retry attempts message
thijskh Jan 23, 2024
3fc1ace
Simplify TiqrContext method
MKodde Jan 23, 2024
29c177a
Simplify TiqrContext methods
MKodde Jan 23, 2024
0b927aa
Rename ip to identityProvider
MKodde Jan 23, 2024
3e7aedb
Stop using the `default` twig path prefix
MKodde Feb 7, 2024
b1609a3
Upgrade NPM dependencies
MKodde Feb 7, 2024
be79e1d
Update Composer packages
MKodde Feb 7, 2024
587ae74
Fix OTP form rendering classes
thijskh Jan 23, 2024
75ac460
Upgrade NPM dependencies
MKodde Feb 7, 2024
646eb22
Update component_info
MKodde Feb 7, 2024
0c6dac9
Update CHANGELOG.md
MKodde Feb 7, 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
2 changes: 1 addition & 1 deletion .docheader
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright %regexp:\d\d\d\d% SURFnet B.V.
* Copyright %regexp:\d{4}% SURFnet %regexp:(B.V.|bv)%
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
21 changes: 0 additions & 21 deletions .env.ci

This file was deleted.

3 changes: 0 additions & 3 deletions .env.dist

This file was deleted.

4 changes: 0 additions & 4 deletions .env.test

This file was deleted.

21 changes: 0 additions & 21 deletions .env.vm

This file was deleted.

295 changes: 295 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,295 @@
/*
👋 Hi! This file was autogenerated by tslint-to-eslint-config.
https://github.com/typescript-eslint/tslint-to-eslint-config

It represents the closest reasonable ESLint configuration to this
project's original TSLint configuration.

We recommend eventually switching this configuration to extend from
the recommended rulesets in typescript-eslint.
https://github.com/typescript-eslint/tslint-to-eslint-config/blob/master/docs/FAQs.md

Happy linting! 💖
*/
module.exports = {
"env": {
"browser": true,
"node": true
},
"extends": [
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "tsconfig.json",
"sourceType": "module"
},
"plugins": [
"eslint-plugin-import",
"eslint-plugin-jsdoc",
"eslint-plugin-prefer-arrow",
"@typescript-eslint",
"@typescript-eslint/tslint"
],
"root": true,
"rules": {
"@typescript-eslint/adjacent-overload-signatures": "error",
"@typescript-eslint/array-type": [
"error",
{
"default": "array"
}
],
"@typescript-eslint/ban-types": [
"error",
{
"types": {
"Object": {
"message": "Avoid using the `Object` type. Did you mean `object`?"
},
"Function": {
"message": "Avoid using the `Function` type. Prefer a specific function type, like `() => void`."
},
"Boolean": {
"message": "Avoid using the `Boolean` type. Did you mean `boolean`?"
},
"Number": {
"message": "Avoid using the `Number` type. Did you mean `number`?"
},
"String": {
"message": "Avoid using the `String` type. Did you mean `string`?"
},
"Symbol": {
"message": "Avoid using the `Symbol` type. Did you mean `symbol`?"
}
}
}
],
"@typescript-eslint/consistent-type-assertions": "error",
"@typescript-eslint/dot-notation": "error",
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@typescript-eslint/naming-convention": [
"error",
{
"selector": "variable",
"format": [
"camelCase",
"UPPER_CASE"
],
"leadingUnderscore": "forbid",
"trailingUnderscore": "forbid"
}
],
"@typescript-eslint/no-empty-function": "error",
"@typescript-eslint/no-empty-interface": "error",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-misused-new": "error",
"@typescript-eslint/no-namespace": "error",
"@typescript-eslint/no-parameter-properties": "off",
"@typescript-eslint/no-shadow": [
"error",
{
"hoist": "all"
}
],
"@typescript-eslint/no-unused-expressions": "error",
"@typescript-eslint/no-use-before-define": "off",
"@typescript-eslint/no-var-requires": "error",
"@typescript-eslint/prefer-for-of": "error",
"@typescript-eslint/prefer-function-type": "error",
"@typescript-eslint/prefer-namespace-keyword": "error",
"@typescript-eslint/semi": [
"error",
"always"
],
"@typescript-eslint/triple-slash-reference": [
"error",
{
"path": "always",
"types": "prefer-import",
"lib": "always"
}
],
"@typescript-eslint/typedef": "off",
"@typescript-eslint/unified-signatures": "error",
"complexity": [
"error",
{
"max": 12
}
],
"constructor-super": "error",
"dot-notation": "off",
"eqeqeq": [
"error",
"smart"
],
"guard-for-in": "error",
"id-denylist": [
"error",
"any",
"Number",
"number",
"String",
"string",
"Boolean",
"boolean",
"Undefined",
"undefined"
],
"id-match": "error",
"import/order": [
"off",
{
"alphabetize": {
"caseInsensitive": true,
"order": "asc"
},
"newlines-between": "ignore",
"groups": [
[
"builtin",
"external",
"internal",
"unknown",
"object",
"type"
],
"parent",
[
"sibling",
"index"
]
],
"distinctGroup": false,
"pathGroupsExcludedImportTypes": [],
"pathGroups": [
{
"pattern": "./",
"patternOptions": {
"nocomment": true,
"dot": true
},
"group": "sibling",
"position": "before"
},
{
"pattern": ".",
"patternOptions": {
"nocomment": true,
"dot": true
},
"group": "sibling",
"position": "before"
},
{
"pattern": "..",
"patternOptions": {
"nocomment": true,
"dot": true
},
"group": "parent",
"position": "before"
},
{
"pattern": "../",
"patternOptions": {
"nocomment": true,
"dot": true
},
"group": "parent",
"position": "before"
}
]
}
],
"jsdoc/check-alignment": "error",
"jsdoc/check-indentation": "error",
"jsdoc/newline-after-description": "error",
"max-classes-per-file": [
"error",
1
],
"max-len": "off",
"new-parens": "error",
"no-bitwise": "error",
"no-caller": "error",
"no-cond-assign": "error",
"no-console": "error",
"no-debugger": "error",
"no-duplicate-imports": "off",
"no-empty": "error",
"no-empty-function": "off",
"no-eval": "error",
"no-fallthrough": "off",
"no-invalid-this": "off",
"no-new-wrappers": "error",
"no-shadow": "off",
"no-throw-literal": "error",
"no-trailing-spaces": "error",
"no-undef-init": "error",
"no-underscore-dangle": "error",
"no-unsafe-finally": "error",
"no-unused-expressions": "off",
"no-unused-labels": "error",
"no-use-before-define": "off",
"no-var": "error",
"object-shorthand": "error",
"one-var": [
"error",
"never"
],
"prefer-arrow/prefer-arrow-functions": [
"error",
{
"allowStandaloneDeclarations": true
}
],
"prefer-const": "error",
"radix": "error",
"semi": "off",
"spaced-comment": [
"error",
"always",
{
"markers": [
"/"
]
}
],
"use-isnan": "error",
"valid-typeof": "off",
"@typescript-eslint/tslint/config": [
"error",
{
"rules": {
"function-name": [
true,
{
"method-regex": "^[a-z][\\w\\d]+$",
"private-method-regex": "^[a-z][\\w\\d]+$",
"protected-method-regex": "^[a-z][\\w\\d]+$",
"static-method-regex": "^[a-zA-Z_\\d]+$",
"function-regex": "^[a-zA-Z][\\w\\d]+$"
}
]
}
}
]
}
};
Loading
Loading