ajout de claper
This commit is contained in:
parent
c0eab91a7e
commit
d528292a08
9 changed files with 155 additions and 0 deletions
|
@ -23,6 +23,11 @@ get_git_source(){
|
|||
fi
|
||||
}
|
||||
|
||||
configure_depot_erlang_rabbitmq(){
|
||||
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/erlang-rabbitmq.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/debian bookworm main" > /etc/apt/sources.list.d/erlang.list
|
||||
wget -qO - "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key" | gpg --dearmor > /usr/share/keyrings/erlang-rabbitmq.gpg
|
||||
}
|
||||
|
||||
configure_depot_yarn() {
|
||||
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" > /etc/apt/sources.list.d/yarn.list
|
||||
wget -qO - https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor > /usr/share/keyrings/yarnkey.gpg
|
||||
|
|
22
ressources/claper/README.MD
Normal file
22
ressources/claper/README.MD
Normal file
|
@ -0,0 +1,22 @@
|
|||
#### claper
|
||||
|
||||
##### Information
|
||||
Site : https://claper.co/
|
||||
|
||||
Doc : https://docs.claper.co/
|
||||
|
||||
Source : https://github.com/ClaperCo/Claper
|
||||
|
||||
##### Install
|
||||
|
||||
```bash
|
||||
apt install -y wget ca-certificates
|
||||
wget -qO - https://deb.lgy.fr/install.sh | bash
|
||||
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/erlang-rabbitmq.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/debian bookworm main" > /etc/apt/sources.list.d/erlang.list
|
||||
wget -qO - "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key" | gpg --dearmor > /usr/share/keyrings/erlang-rabbitmq.gpg
|
||||
apt-get update
|
||||
apt-get install -y claper
|
||||
|
||||
systemctl enable --now claper
|
||||
|
||||
```
|
42
ressources/claper/debmaker
Executable file
42
ressources/claper/debmaker
Executable file
|
@ -0,0 +1,42 @@
|
|||
#!/bin/bash
|
||||
|
||||
VERSION=2.1.1
|
||||
APP=claper
|
||||
DEPOT=https://github.com/ClaperCo/Claper.git
|
||||
GIT_VERSION=v${VERSION}
|
||||
DEB_VERSION=${VERSION}-$(date +%Y%m%d%H%M)
|
||||
DEBIAN_VERSION_CODENAME=bookworm
|
||||
IMAGE_SIZE=5
|
||||
PACKAGE_DEPENDENCY="nodejs elixir npm erlang-dev erlang-syntax-tools make build-essential erlang-xmerl"
|
||||
|
||||
main(){
|
||||
configure_depot_erlang_rabbitmq
|
||||
base_package_upgrade
|
||||
install_package_dependency
|
||||
get_git_source
|
||||
build
|
||||
makedeb
|
||||
}
|
||||
|
||||
build() {
|
||||
cd /tmp/${APP}
|
||||
mix local.hex --force
|
||||
mix deps.get
|
||||
mix ecto.migrate
|
||||
mix assets.deploy
|
||||
}
|
||||
|
||||
makedeb(){
|
||||
PATH_DEB=/tmp/src/rootfs
|
||||
mkdir -p ${PATH_DEB}/opt/
|
||||
mkdir -p ${PATH_DEB}/etc/default/
|
||||
mkdir -p ${PATH_DEB}/usr/lib/systemd/system/
|
||||
|
||||
mv ${PATH_DEB}/DEBIAN/claper.default ${PATH_DEB}/etc/default/claper
|
||||
mv ${PATH_DEB}/DEBIAN/claper.service ${PATH_DEB}/usr/lib/systemd/system/
|
||||
cp -fr /tmp/${APP} ${PATH_DEB}/opt/${APP}
|
||||
cp -fr /root/.mix ${PATH_DEB}/opt/${APP}
|
||||
|
||||
sed -i "s/%VERSION%/$DEB_VERSION/" ${PATH_DEB}/DEBIAN/control
|
||||
fakeroot dpkg-deb -Z gzip --build ${PATH_DEB} /tmp/dist
|
||||
}
|
0
ressources/claper/rootfs/DEBIAN/changelog
Normal file
0
ressources/claper/rootfs/DEBIAN/changelog
Normal file
53
ressources/claper/rootfs/DEBIAN/claper.default
Normal file
53
ressources/claper/rootfs/DEBIAN/claper.default
Normal file
|
@ -0,0 +1,53 @@
|
|||
|
||||
BASE_URL=https://domainer.com
|
||||
# SAME_SITE_COOKIE=Lax
|
||||
# SECURE_COOKIE=false
|
||||
|
||||
DATABASE_URL=postgres://claper:xxxxxxxxxxx@postgresql:5432/claper
|
||||
SECRET_KEY_BASE=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
# ⚠️ Don't use this exact value for SECRET_KEY_BASE or someone would be able to sign a cookie with user_id=1 and log in as the admin!
|
||||
|
||||
# Storage configuration
|
||||
|
||||
PRESENTATION_STORAGE=local
|
||||
PRESENTATION_STORAGE_DIR=priv/static
|
||||
#MAX_FILE_SIZE_MB=15
|
||||
|
||||
#AWS_ACCESS_KEY_ID=xxx
|
||||
#AWS_SECRET_ACCESS_KEY=xxx
|
||||
#AWS_REGION=eu-west-3
|
||||
#AWS_PRES_BUCKET=xxx
|
||||
|
||||
# Mail configuration
|
||||
|
||||
MAIL_TRANSPORT=local
|
||||
MAIL_FROM=noreply@claper.co
|
||||
MAIL_FROM_NAME=Claper
|
||||
|
||||
SMTP_RELAY=smtprelay
|
||||
#SMTP_USERNAME=johndoe@example.com
|
||||
#SMTP_PASSWORD=xxx
|
||||
#SMTP_PORT=465
|
||||
#SMTP_TLS=if_available
|
||||
|
||||
#ENABLE_MAILBOX_ROUTE=false
|
||||
#MAILBOX_USER=admin
|
||||
#MAILBOX_PASSWORD=admin
|
||||
|
||||
# Claper configuration
|
||||
|
||||
ENABLE_ACCOUNT_CREATION=false
|
||||
#ALLOW_UNLINK_EXTERNAL_PROVIDER=false
|
||||
#LOGOUT_REDIRECT_URL=https://google.com
|
||||
#GS_JPG_RESOLUTION=300x300
|
||||
|
||||
# OIDC configuration
|
||||
|
||||
#OIDC_PROVIDER_NAME="keycloak"
|
||||
#OIDC_ISSUER=
|
||||
#OIDC_CLIENT_ID=
|
||||
#OIDC_CLIENT_SECRET=
|
||||
# OIDC_SCOPES="openid email profile"
|
||||
# OIDC_LOGO_URL=""
|
||||
# OIDC_PROPERTY_MAPPINGS="roles:custom_attributes.roles,organization:custom_attributes.organization"
|
||||
#OIDC_AUTO_REDIRECT_LOGIN=true
|
19
ressources/claper/rootfs/DEBIAN/claper.service
Normal file
19
ressources/claper/rootfs/DEBIAN/claper.service
Normal file
|
@ -0,0 +1,19 @@
|
|||
[Unit]
|
||||
Description=claper
|
||||
|
||||
[Service]
|
||||
User=claper
|
||||
Group=claper
|
||||
EnvironmentFile=/etc/default/claper
|
||||
ExecStart=/usr/bin/mix phx.server
|
||||
WorkingDirectory=/opt/claper
|
||||
PrivateTmp=true
|
||||
PrivateDevices=true
|
||||
ProtectHome=true
|
||||
ProtectSystem=strict
|
||||
Restart=on-failure
|
||||
RestartSec=30s
|
||||
ReadWritePaths=/opt/claper
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
1
ressources/claper/rootfs/DEBIAN/conffiles
Normal file
1
ressources/claper/rootfs/DEBIAN/conffiles
Normal file
|
@ -0,0 +1 @@
|
|||
/etc/default/claper
|
8
ressources/claper/rootfs/DEBIAN/control
Normal file
8
ressources/claper/rootfs/DEBIAN/control
Normal file
|
@ -0,0 +1,8 @@
|
|||
Package: claper
|
||||
Version: %VERSION%
|
||||
Section: contrib
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
Depends: inotify-tools, erlang-base, erlang-syntax-tools, erlang-xmerl
|
||||
Maintainer: Thomas Legay <thomas@lgy.fr>
|
||||
Description: claper
|
5
ressources/claper/rootfs/DEBIAN/postinst
Executable file
5
ressources/claper/rootfs/DEBIAN/postinst
Executable file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
id claper &> /dev/null || useradd claper -r -s /bin/false -d /opt/claper
|
||||
|
||||
chown -R claper:claper /opt/claper
|
Loading…
Reference in a new issue