ci: docker_tag=dev-test - Mise à jour documentation et standardisation
This commit is contained in:
parent
0bed1cecc9
commit
a4ef82b68f
@ -1,10 +1,79 @@
|
|||||||
# Cursor ignore file for lecoffre-front
|
# 4NK Environment - Git Ignore
|
||||||
node_modules/
|
# ============================
|
||||||
.next/
|
confs/
|
||||||
dist/
|
# Dossiers de sauvegarde des scripts
|
||||||
*.log
|
**/backup/
|
||||||
.env*
|
**/*backup*
|
||||||
.DS_Store
|
|
||||||
coverage/
|
**/.cargo/
|
||||||
build/
|
|
||||||
out/
|
# Fichiers temporaires
|
||||||
|
**/*.tmp*
|
||||||
|
**/*.temp*
|
||||||
|
**/*.log*
|
||||||
|
**/*.pid*
|
||||||
|
|
||||||
|
# Fichiers de configuration locale
|
||||||
|
**/*.env*
|
||||||
|
**/*.conf*
|
||||||
|
**/*.yaml*
|
||||||
|
**/*.yml*
|
||||||
|
**/*.ini*
|
||||||
|
**/*.json*
|
||||||
|
**/*.toml*
|
||||||
|
**/*.lock*
|
||||||
|
|
||||||
|
# Données et logs
|
||||||
|
**/*.logs*
|
||||||
|
**/*.data
|
||||||
|
*.db
|
||||||
|
*.sqlite
|
||||||
|
|
||||||
|
# Certificats et clés
|
||||||
|
**/*.key
|
||||||
|
**/*.pem
|
||||||
|
**/*.crt
|
||||||
|
**/*.p12
|
||||||
|
**/*.pfx
|
||||||
|
ssl/
|
||||||
|
certs/
|
||||||
|
|
||||||
|
# Docker
|
||||||
|
**/*.docker*
|
||||||
|
|
||||||
|
# Cache et build
|
||||||
|
**/*.node_modules/
|
||||||
|
**/*.dist/
|
||||||
|
**/*build/
|
||||||
|
**/*target/
|
||||||
|
**/*.*.o
|
||||||
|
**/*.so
|
||||||
|
**/*.dylib
|
||||||
|
|
||||||
|
# IDE et éditeurs
|
||||||
|
**/*.vscode/
|
||||||
|
**/*.idea/
|
||||||
|
**/*.swp
|
||||||
|
**/*.swo
|
||||||
|
**/*~
|
||||||
|
|
||||||
|
# OS
|
||||||
|
**/*.DS_Store
|
||||||
|
**/*Thumbs.db
|
||||||
|
**/*tmp*
|
||||||
|
|
||||||
|
# Git
|
||||||
|
**/*.git/
|
||||||
|
**/*.orig*
|
||||||
|
|
||||||
|
# Backup des projets existants
|
||||||
|
**/*backup*
|
||||||
|
|
||||||
|
|
||||||
|
**/*wallet*
|
||||||
|
**/*keys*
|
||||||
|
|
||||||
|
**/*node_modules*
|
||||||
|
**/*cursor*
|
||||||
|
**/*pid*
|
||||||
|
**/*next*
|
@ -1,11 +1,79 @@
|
|||||||
.git
|
# 4NK Environment - Git Ignore
|
||||||
node_modules
|
# ============================
|
||||||
.next
|
confs/
|
||||||
coverage
|
# Dossiers de sauvegarde des scripts
|
||||||
dist
|
**/backup/
|
||||||
.DS_Store
|
**/*backup*
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
.env*
|
|
||||||
|
|
||||||
|
**/.cargo/
|
||||||
|
|
||||||
|
# Fichiers temporaires
|
||||||
|
**/*.tmp*
|
||||||
|
**/*.temp*
|
||||||
|
**/*.log*
|
||||||
|
**/*.pid*
|
||||||
|
|
||||||
|
# Fichiers de configuration locale
|
||||||
|
**/*.env*
|
||||||
|
**/*.conf*
|
||||||
|
**/*.yaml*
|
||||||
|
**/*.yml*
|
||||||
|
**/*.ini*
|
||||||
|
**/*.json*
|
||||||
|
**/*.toml*
|
||||||
|
**/*.lock*
|
||||||
|
|
||||||
|
# Données et logs
|
||||||
|
**/*.logs*
|
||||||
|
**/*.data
|
||||||
|
*.db
|
||||||
|
*.sqlite
|
||||||
|
|
||||||
|
# Certificats et clés
|
||||||
|
**/*.key
|
||||||
|
**/*.pem
|
||||||
|
**/*.crt
|
||||||
|
**/*.p12
|
||||||
|
**/*.pfx
|
||||||
|
ssl/
|
||||||
|
certs/
|
||||||
|
|
||||||
|
# Docker
|
||||||
|
**/*.docker*
|
||||||
|
|
||||||
|
# Cache et build
|
||||||
|
**/*.node_modules/
|
||||||
|
**/*.dist/
|
||||||
|
**/*build/
|
||||||
|
**/*target/
|
||||||
|
**/*.*.o
|
||||||
|
**/*.so
|
||||||
|
**/*.dylib
|
||||||
|
|
||||||
|
# IDE et éditeurs
|
||||||
|
**/*.vscode/
|
||||||
|
**/*.idea/
|
||||||
|
**/*.swp
|
||||||
|
**/*.swo
|
||||||
|
**/*~
|
||||||
|
|
||||||
|
# OS
|
||||||
|
**/*.DS_Store
|
||||||
|
**/*Thumbs.db
|
||||||
|
**/*tmp*
|
||||||
|
|
||||||
|
# Git
|
||||||
|
**/*.git/
|
||||||
|
**/*.orig*
|
||||||
|
|
||||||
|
# Backup des projets existants
|
||||||
|
**/*backup*
|
||||||
|
|
||||||
|
|
||||||
|
**/*wallet*
|
||||||
|
**/*keys*
|
||||||
|
|
||||||
|
**/*node_modules*
|
||||||
|
**/*cursor*
|
||||||
|
**/*pid*
|
||||||
|
**/*next*
|
107
.gitignore
vendored
107
.gitignore
vendored
@ -1,42 +1,79 @@
|
|||||||
# Secrets et fichiers sensibles
|
# 4NK Environment - Git Ignore
|
||||||
.env
|
# ============================
|
||||||
.env.*
|
confs/
|
||||||
!.env.example
|
# Dossiers de sauvegarde des scripts
|
||||||
!.env.exemple
|
**/backup/
|
||||||
*.key
|
**/*backup*
|
||||||
*.pem
|
|
||||||
secrets/
|
|
||||||
|
|
||||||
# Logs
|
**/.cargo/
|
||||||
logs/
|
|
||||||
*.log
|
|
||||||
|
|
||||||
.cargo/
|
# Fichiers temporaires
|
||||||
Cargo.lock
|
**/*.tmp*
|
||||||
*/.cargo/
|
**/*.temp*
|
||||||
*/Cargo.lock
|
**/*.log*
|
||||||
# Node.js
|
**/*.pid*
|
||||||
node_modules/
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
|
|
||||||
# Next.js
|
# Fichiers de configuration locale
|
||||||
.next/
|
**/*.env*
|
||||||
out/
|
**/*.conf*
|
||||||
build/
|
**/*.yaml*
|
||||||
dist/
|
**/*.yml*
|
||||||
|
**/*.ini*
|
||||||
|
**/*.json*
|
||||||
|
**/*.toml*
|
||||||
|
**/*.lock*
|
||||||
|
|
||||||
# IDE
|
# Données et logs
|
||||||
.vscode/
|
**/*.logs*
|
||||||
.idea/
|
**/*.data
|
||||||
*.swp
|
*.db
|
||||||
*.swo
|
*.sqlite
|
||||||
|
|
||||||
|
# Certificats et clés
|
||||||
|
**/*.key
|
||||||
|
**/*.pem
|
||||||
|
**/*.crt
|
||||||
|
**/*.p12
|
||||||
|
**/*.pfx
|
||||||
|
ssl/
|
||||||
|
certs/
|
||||||
|
|
||||||
|
# Docker
|
||||||
|
**/*.docker*
|
||||||
|
|
||||||
|
# Cache et build
|
||||||
|
**/*.node_modules/
|
||||||
|
**/*.dist/
|
||||||
|
**/*build/
|
||||||
|
**/*target/
|
||||||
|
**/*.*.o
|
||||||
|
**/*.so
|
||||||
|
**/*.dylib
|
||||||
|
|
||||||
|
# IDE et éditeurs
|
||||||
|
**/*.vscode/
|
||||||
|
**/*.idea/
|
||||||
|
**/*.swp
|
||||||
|
**/*.swo
|
||||||
|
**/*~
|
||||||
|
|
||||||
# OS
|
# OS
|
||||||
.DS_Store
|
**/*.DS_Store
|
||||||
Thumbs.db
|
**/*Thumbs.db
|
||||||
|
**/*tmp*
|
||||||
|
|
||||||
# Temporary files
|
# Git
|
||||||
tmp/
|
**/*.git/
|
||||||
*.tmp.cursor-server
|
**/*.orig*
|
||||||
|
|
||||||
|
# Backup des projets existants
|
||||||
|
**/*backup*
|
||||||
|
|
||||||
|
|
||||||
|
**/*wallet*
|
||||||
|
**/*keys*
|
||||||
|
|
||||||
|
**/*node_modules*
|
||||||
|
**/*cursor*
|
||||||
|
**/*pid*
|
||||||
|
**/*next*
|
@ -43,7 +43,7 @@ export default class Auth extends BaseApiService {
|
|||||||
method: 'POST',
|
method: 'POST',
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
'X-Request-ID': `front_${Math.random().toString(36).slice(2)}`,
|
'X-Session-ID': `front_${Math.random().toString(36).slice(2)}`,
|
||||||
},
|
},
|
||||||
body: JSON.stringify({ next_url: nextUrl })
|
body: JSON.stringify({ next_url: nextUrl })
|
||||||
});
|
});
|
||||||
|
@ -42,7 +42,7 @@ export default abstract class BaseApiService {
|
|||||||
// Toujours annoncer qu'on attend du JSON côté front pour les appels API
|
// Toujours annoncer qu'on attend du JSON côté front pour les appels API
|
||||||
headers.set("Accept", "application/json");
|
headers.set("Accept", "application/json");
|
||||||
// Propager un identifiant de requête pour corrélation côté proxy/backend
|
// Propager un identifiant de requête pour corrélation côté proxy/backend
|
||||||
headers.set("X-Request-ID", `front_${Math.random().toString(36).slice(2)}`);
|
headers.set("X-Session-ID", `front_${Math.random().toString(36).slice(2)}`);
|
||||||
headers.set("Authorization", `Bearer ${token}`);
|
headers.set("Authorization", `Bearer ${token}`);
|
||||||
return headers;
|
return headers;
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ export default function StepEmail(props: IProps) {
|
|||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
'Accept': 'application/json',
|
'Accept': 'application/json',
|
||||||
'X-Request-ID': `front_${Math.random().toString(36).slice(2)}`,
|
'X-Session-ID': `front_${Math.random().toString(36).slice(2)}`,
|
||||||
},
|
},
|
||||||
body: JSON.stringify({ next_url: nextUrl })
|
body: JSON.stringify({ next_url: nextUrl })
|
||||||
});
|
});
|
||||||
|
126
temp.yaml
126
temp.yaml
@ -1,126 +0,0 @@
|
|||||||
---
|
|
||||||
# Source: leCoffre-front/templates/service-account.yaml
|
|
||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: lecoffre-front-sa
|
|
||||||
---
|
|
||||||
# Source: leCoffre-front/templates/service-account.yaml
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Secret
|
|
||||||
metadata:
|
|
||||||
name: lecoffre-front-sa-token
|
|
||||||
annotations:
|
|
||||||
kubernetes.io/service-account.name: lecoffre-front-sa
|
|
||||||
type: kubernetes.io/service-account-token
|
|
||||||
---
|
|
||||||
# Source: leCoffre-front/templates/lecoffre-front.yaml
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: lecoffre-front-svc
|
|
||||||
namespace: lecoffre
|
|
||||||
labels:
|
|
||||||
spec:
|
|
||||||
ports:
|
|
||||||
- port: 80
|
|
||||||
name: http
|
|
||||||
targetPort: 3000
|
|
||||||
selector:
|
|
||||||
app: lecoffre-front
|
|
||||||
---
|
|
||||||
# Source: leCoffre-front/templates/lecoffre-front.yaml
|
|
||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: lecoffre-front
|
|
||||||
namespace: lecoffre
|
|
||||||
labels:
|
|
||||||
app: lecoffre-front
|
|
||||||
spec:
|
|
||||||
replicas: 1
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: lecoffre-front
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
annotations:
|
|
||||||
vault.hashicorp.com/agent-inject: "true"
|
|
||||||
vault.hashicorp.com/agent-inject-secret-envs: secret/data/lecoffre-front-stg/config/envs
|
|
||||||
vault.hashicorp.com/agent-inject-template-envs: |
|
|
||||||
{{ with secret "secret/data/lecoffre-front-stg/config/envs" }}
|
|
||||||
{{ range $k, $v := .Data.data }}
|
|
||||||
export {{ $k }}="{{ $v }}"
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
vault.hashicorp.com/agent-pre-populate-only: "true"
|
|
||||||
vault.hashicorp.com/role: custom_lecoffre-front_injector_rol
|
|
||||||
labels:
|
|
||||||
app: lecoffre-front
|
|
||||||
spec:
|
|
||||||
serviceAccountName: lecoffre-front-sa
|
|
||||||
imagePullSecrets:
|
|
||||||
- name: docker-pull-secret
|
|
||||||
containers:
|
|
||||||
- name: lecoffre-front
|
|
||||||
image: "rg.fr-par.scw.cloud/lecoffre/front:v0.1.9"
|
|
||||||
|
|
||||||
resources:
|
|
||||||
limits:
|
|
||||||
memory: 2Gi
|
|
||||||
requests:
|
|
||||||
cpu: 200m
|
|
||||||
memory: 1Gi
|
|
||||||
|
|
||||||
imagePullPolicy: Always
|
|
||||||
command: ['sh', '-c', '. /vault/secrets/envs && npm run start']
|
|
||||||
---
|
|
||||||
# Source: leCoffre-front/templates/lecoffre-front.yaml
|
|
||||||
apiVersion: networking.k8s.io/v1
|
|
||||||
kind: Ingress
|
|
||||||
metadata:
|
|
||||||
name: lecoffre-front
|
|
||||||
namespace: lecoffre
|
|
||||||
|
|
||||||
annotations:
|
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-prod
|
|
||||||
kubernetes.io/ingress.class: nginx
|
|
||||||
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
|
||||||
nginx.ingress.kubernetes.io/from-to-www-redirect: "true"
|
|
||||||
|
|
||||||
spec:
|
|
||||||
tls:
|
|
||||||
- hosts: [app.stg.lecoffre.smart-chain.fr]
|
|
||||||
secretName: app-tls
|
|
||||||
rules:
|
|
||||||
- host: app.stg.lecoffre.smart-chain.fr
|
|
||||||
http:
|
|
||||||
paths:
|
|
||||||
- path: /
|
|
||||||
pathType: Prefix
|
|
||||||
backend:
|
|
||||||
service:
|
|
||||||
name: lecoffre-front-svc
|
|
||||||
port:
|
|
||||||
number: 80
|
|
||||||
---
|
|
||||||
# Source: leCoffre-front/templates/docker-pull-secret.yaml
|
|
||||||
apiVersion: external-secrets.io/v1beta1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: docker-pull-secret
|
|
||||||
spec:
|
|
||||||
refreshInterval: 1h
|
|
||||||
secretStoreRef:
|
|
||||||
name: dockerpullsecret-vault-cluster-secret-store
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
target:
|
|
||||||
template:
|
|
||||||
type: kubernetes.io/dockerconfigjson
|
|
||||||
name: docker-pull-secret
|
|
||||||
creationPolicy: Owner
|
|
||||||
data:
|
|
||||||
- secretKey: .dockerconfigjson
|
|
||||||
remoteRef:
|
|
||||||
key: secret/data/lecoffre-front-stg/config/dockerpullsecret
|
|
||||||
property: .dockerconfigjson
|
|
Loading…
x
Reference in New Issue
Block a user