add drupal submodule

This commit is contained in:
2023-05-18 12:34:23 +02:00
parent 59cde3d404
commit 99fa271ece
6 changed files with 237 additions and 54 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
COMPOSE_PROJECT_NAME=popsu
COMPOSE_PROJECT_NAME=training
PROJECT_ROOT=./src
LOG_ROOT=./log
+3
View File
@@ -0,0 +1,3 @@
[submodule "src"]
path = src
url = https://figureslibres.io/gogs/ouidade/drupal-training.git
+4 -42
View File
@@ -1,8 +1,8 @@
server {
listen 80;
root /var/www/d7;
root /var/www/training/web;
index index.html index.php;
server_name dev.d7.popsu.archi.fr;
server_name dev.training.fr;
charset utf-8;
@@ -14,7 +14,7 @@ server {
location = /robots.txt { access_log off; log_not_found off; }
access_log on;
error_log /var/log/nginx/error-d7.log error;
error_log /var/log/nginx/error.log error;
sendfile off;
@@ -22,45 +22,7 @@ server {
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php_d7:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
location ~ /\.ht {
deny all;
}
}
server {
listen 80;
root /var/www/d9/web;
index index.html index.php;
server_name dev.d9.popsu.archi.fr;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log on;
error_log /var/log/nginx/error-d9.log error;
sendfile off;
client_max_body_size 100m;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php_d9:9000;
fastcgi_pass php:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+6 -6
View File
@@ -20,7 +20,7 @@ https://wiki.archlinux.org/index.php/Docker#Installation
this will clone this repos (main docker environement) and the training.fr drupal 9 source code (without sites/default folder nor mysq ddbs)
```
git clone --recursive -o figli https://figureslibres.io/gogs/bachir/docker-training.git
git clone --recursive -o figli https://figureslibres.io/gogs/ouidade/docker-training.git
```
submodules :
@@ -40,17 +40,17 @@ rsync the files from you know where (if you don't, you don't) to src/web/sites/d
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini``` and edit the ```xdebug.remote_host``` ip to your host locale ip (e.g. : 192.168.0.23) (or once the docker is started to the host ip from the container point of vu e.g. 172.21.0.1)
## Mysql
Copy your-sql-dump.sql files into ```./ressources/training_d9.sql```
Copy your-sql-dump.sql files into ```./ressources/training.sql```
They will be automaticly imported into the mysql containers dbs (only) on the first docker-compose up
## Hosts and reverse proxy
add to your /etc/hosts :
```
127.0.0.1 dev.d9.training.archi.fr
127.0.0.1 dev.phpmyadmin.training.archi.fr
127.0.0.1 dev.training.fr
127.0.0.1 dev.phpmyadmin.training.fr
```
configure your vhosts to add a reverse proxy that will redirect the dev.materio.com to our container
configure your vhosts to add a reverse proxy that will redirect the dev.training.fr to our container
### nginx
@@ -61,7 +61,7 @@ sudo mkdir /etc/var/log/training
```nginx
server {
listen 80;
server_name dev.training.archi.fr;
server_name dev.training.fr;
access_log off;
error_log /var/log/nginx/training/error.log error;
+222 -5
View File
@@ -18,10 +18,15 @@ change occurence in Readme (ctrl + D pour sélectionner tout en même temps)
dossier Docker: php mettre bonne version
Docker-compose.yml
Makefile
.env (project name donne le nom aux containers)
docker > nginx > default.conf
### xdebug
## xdebug
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini```
### git
remove old folder git
@@ -30,17 +35,229 @@ remove old folder git
rm -rf .git
rm .gitmodules
```
create new git repositorie
```
git status
```
```
git init
git add .
git commit -m 'first commit'
git remote add origin https://figureslibres.io/gogs/ouidade/docker-training.git
git push -u origin master
```
## Hosts and reverse proxy
add to your /etc/hosts :
```
127.0.0.1 dev.training.fr
127.0.0.1 dev.phpmyadmin.training.fr
```
configure your vhosts to add a reverse proxy that will redirect the dev.training.fr to our container
create new file, dev.training.fr.conf, in /etc/nginx/sites-available
```
server {
listen 80;
server_name dev.training.fr;
access_log off;
error_log /var/log/nginx/training/error.log error;
client_max_body_size 100m;
location / {
proxy_pass http://127.0.0.1:8980;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
}
}
server {
listen 80;
server_name dev.phpmyadmin.training.fr;
location / {
proxy_pass http://127.0.0.1:8981;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
}
}
```
```
sudo ln -s /etc/nginx/sites-available/dev.training.fr.conf /etc/nginx/sites-enabled
```
``` sudo nginx -t ``` all should be ok
```
sudo systemctl restart nginx
```
### build docker
```
make build
make up
make ps
```
### instal drupal with composer
```
cd public_html
composer create-project drupal/recommended-project:^9.5 .
```
## clone this profile into profiles folder
```
cd profiles
git clone -o figli https://figureslibres.io/gogs/bachir/drupal-starterkit-profile.git
```
## include the profile's composer file to the main drupal's composer file
install composer-merge-plugin
```
composer require wikimedia/composer-merge-plugin
```
then in main drupal's composer.js file add this in extra
```
"extra": {
...
"merge-plugin": {
"include": [
"web/profiles/d8-starterkit-profile/composer.json"
],
"recurse": true,
"replace": false,
"merge-extra": true
}
...
}
```
## install the profile's merged dependencies with composer
cd ../
composer update
### sites/default setup
```
mkdir -p web/sites/default/files
cp web/sites/default/default.settings.php web/sites/default/settings.php
```
in docker exit container php and re-log as root in php container
```
docker exec -u 0 -it training-php-1 bash
```
then aply changes
```
chgrp -R www-data web/sites/default/files
chgrp -R www-data web/sites/default/settings.php
chmod g+r web/sites/default/files
chmod g+r web/sites/default/settings.php
```
exit container php as root ```ctrl + D```
### install database with install drupal on navigator
choose profile figli starter kit
for set up database use info in .env file (for work localserver only passwords very basic, be carefull if on line)
advanced options :
hosts : mysql
in dump databse there will be files but also modules config
### git the drupal (src folder)
```
git init
```
create a .gitignore file
```
# Ignore directories generated by Composer
/drush/contrib/
/vendor/
/web/core/
/web/modules/contrib/
/web/themes/contrib/
/web/profiles/contrib/
/web/libraries/
composer.lock
# Ignore sensitive information
/web/sites/*/settings.php
/web/sites/*/settings.local.php
/web/sites/*/services*.yml
# Ignore Drupal's file directory
/web/sites/*/files/
# Ignore SimpleTest multi-site environment.
/web/sites/simpletest
# Ignore files generated by PhpStorm
/.idea/
# Ignore .env files as they are personal
/.env
# npm
node_modules/
*.patch
/.csslintrc
/.eslintrc.json
/.ht.router.php
/.htaccess
/INSTALL.txt
/README.txt
/autoload.php
/example.gitignore
/index.php
/robots.txt
/update.php
/web.config
/web/.vscode/*
```
```
git status
git add .
```
remove file D8-starterit-profile from the git index in order to add it as a submodule.
```git reset web/profiles/d8-starterkit-profile```
add submodule
```
git submodule add https://figureslibres.io/gogs/bachir/d8-starterkit-profile.git web/profiles/d8-starterkit-profile
```
```
git commit -m "first drupal instal working"
```
Create new repository on gogs, for durpal
then
```
git remote add origin https://figureslibres.io/gogs/ouidade/drupal-training.git
```
```
git push origin master
```
Submodule
+1
Submodule src added at 12bb523bd4