From f554fff1d2e2214df2eebc34d29c1370786791b2 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 18 Oct 2020 23:39:14 +0200 Subject: [PATCH 01/16] Upgrade to 4.9.5 --- README.md | 34 ++++++++++++--------- check_process | 11 ------- conf/app.src | 4 +-- conf/nginx.conf | 9 ++++-- manifest.json | 18 +++++++----- scripts/_common.sh | 3 +- scripts/backup | 23 +++++---------- scripts/install | 73 +--------------------------------------------- scripts/remove | 4 --- scripts/restore | 6 ---- scripts/upgrade | 22 +------------- 11 files changed, 51 insertions(+), 156 deletions(-) diff --git a/README.md b/README.md index 9d5db75..542a36f 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,19 @@ +# Snipe-IT for YunoHost -# Snipe-IT app for YunoHost - -[![Integration level](https://dash.yunohost.org/integration/snipeit.svg)](https://dash.yunohost.org/appci/app/snipeit) -[![Install snipeit with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=snipeit) - +[![Integration level](https://dash.yunohost.org/integration/snipeit.svg)](https://dash.yunohost.org/appci/app/snipeit) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.maintain.svg) +[![Install Snipe-IT with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=snipeit) +> *This package allows you to install Snipe-IT quickly and simply on a YunoHost server. +If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -This is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. +This is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. It is built on Laravel 5.4. -It is built on Laravel 5.4. - -**Shipped version:** 4.9.2 +**Shipped version:** 4.9.5 +## Screenshots +![](https://snipeitapp.com/img/screenshots/screenshot-license-list.png) ## Demo @@ -25,14 +25,10 @@ It is built on Laravel 5.4. 1. No LDAP support yet. 1. This app is multi-instance (you can have more then one instance of this app running on a YunoHost server) - - #### Supported architectures -* x86-64b - [![Build Status](https://ci-apps.yunohost.org/ci/logs/snipeit%20%28Community%29.svg)](https://ci-apps.yunohost.org/ci/apps/snipeit/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/snipeit%20%28Community%29.svg)](https://ci-apps.yunohost.org/ci/apps/snipeit/) * ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/snipeit%20%28Community%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/snipeit/) -* Jessie x86-64b - [![Build Status](https://ci-stretch.nohost.me/ci/logs/snipeit%20%28Community%29.svg)](https://ci-stretch.nohost.me/ci/apps/snipeit/) - ## Links @@ -43,3 +39,13 @@ It is built on Laravel 5.4. --- +## Developer info + +Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing). + +To try the testing branch, please proceed like that. +``` +sudo yunohost app install https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing --debug +or +sudo yunohost app upgrade snipeit -u https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing --debug +``` diff --git a/check_process b/check_process index 00f1bde..7c39ec0 100644 --- a/check_process +++ b/check_process @@ -25,18 +25,7 @@ port_already_use=0 change_url=0 ;;; Levels - Level 1=auto - Level 2=auto - Level 3=auto -# Level 4: If the app supports LDAP and SSOwat, turn level 4 to '1' and add a link to an issue or a part of your code to show it. -# If the app does not use LDAP nor SSOwat, and can't use them, turn level 4 to 'na' and explain as well. - Level 4=0 Level 5=auto - Level 6=auto - Level 7=auto - Level 8=0 - Level 9=0 - Level 10=0 ;;; Options Email=anmol@datamol.org Notification=change diff --git a/conf/app.src b/conf/app.src index c863ec4..bf51e7a 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/snipe/snipe-it/archive/v4.9.2.tar.gz -SOURCE_SUM=57b15469492f063f6c893da20ccaf34921810ea40f83f56186cee8aff91fe161 +SOURCE_URL=https://github.com/snipe/snipe-it/archive/v4.9.5.tar.gz +SOURCE_SUM=0f277dc712af511a90d722e0f3fc7ab1731356f823b9122c7df8eca85892ce5d SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/nginx.conf b/conf/nginx.conf index 50e6a3c..7d5d614 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -1,11 +1,16 @@ -location ^~ __PATH__ { +location ^~ __PATH__/ { + alias __FINALPATH__/public/; + try_files $uri $uri/ @snipe; + index index.php; - # Force https + + # Force https if ($scheme = http) { rewrite ^ https://$server_name$request_uri? permanent; } + location ~ \.php { fastcgi_split_path_info ^(.+?\.php)(/.*)$; fastcgi_pass unix:/var/run/php/php__YNH_PHP_VERSION__-fpm-__NAME__.sock; diff --git a/manifest.json b/manifest.json index 2e6f354..0e6b82c 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Manage assets for IT operations", "fr": "Gestionnaire de ressources informatiques" }, - "version": "4.9.2~ynh1", + "version": "4.9.5~ynh1", "url": "https://snipeitapp.com/", "license": "MIT", "maintainer": { @@ -19,7 +19,7 @@ "multi_instance": true, "services": [ "nginx", - "php-fpm", + "php7.0-fpm", "mysql" ], "arguments": { @@ -28,7 +28,8 @@ "name": "domain", "type": "domain", "ask": { - "en": "Choose a domain name for SnipeIT" + "en": "Choose a domain name for Snipe-IT", + "fr": "Choisissez un nom de domaine pour Snipe-IT" }, "example": "example.com" }, @@ -36,7 +37,8 @@ "name": "admin", "type": "user", "ask": { - "en": "Choose an admin user" + "en": "Choose an admin user", + "fr": "Choisissez l'administrateur" }, "example": "johndoe" }, @@ -44,7 +46,8 @@ "name": "is_public", "type": "boolean", "ask": { - "en": "Is it a public application?" + "en": "Is it a public application?", + "fr": "Est-ce une application publique ?" }, "default": true }, @@ -52,9 +55,10 @@ "name": "language", "type": "string", "ask": { - "en": "Choose the application language" + "en": "Choose the application language", + "fr": "Choisissez la langue de l'application" }, - "choices": ["en", "en-GB", "af", "ar", "bg", "zh-CN", "zh-TW", "hr", "cs", "da", "nl", "et", "fi", "fr", "de", "el", "he", "hu", "id", "en-ID", "ga-IE", "it", "ja", "ko", "lv", "lt", "ms", "mi", "mn", "no", "fa", "pl", "pt-PT", "pt-BR", "ro", "ru", "es-ES", "es-CO", "sv-SE", "ta", "tr", "vi", "zu"], + "choices": ["en", "fr"], "default": "en" } ] diff --git a/scripts/_common.sh b/scripts/_common.sh index 80bf0d9..8b17821 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -10,6 +10,7 @@ pkg_dependencies="openssl" YNH_PHP_VERSION=7.3 + extra_php_dependencies="php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-bcmath php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-common php${YNH_PHP_VERSION}-gd" #================================================= @@ -83,4 +84,4 @@ ynh_install_composer () { # update dependencies to create composer.lock ynh_composer_exec --phpversion="${phpversion}" --workdir="$workdir" --commands="install --no-dev" \ || ynh_die "Unable to update core dependencies with Composer." -} \ No newline at end of file +} diff --git a/scripts/backup b/scripts/backup index 41c31aa..6f3ff9f 100755 --- a/scripts/backup +++ b/scripts/backup @@ -14,17 +14,12 @@ source /usr/share/yunohost/helpers # MANAGE SCRIPT FAILURE #================================================= -ynh_clean_setup () { - ### Remove this function if there's nothing to clean before calling the remove script. - true -} -# Exit if an error occurs during the execution of the script ynh_abort_if_errors #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." --time --weight=1 +ynh_print_info --message="Loading installation settings..." app=$YNH_APP_INSTANCE_NAME @@ -33,41 +28,37 @@ domain=$(ynh_app_setting_get --app=$app --key=domain) db_name=$(ynh_app_setting_get --app=$app --key=db_name) #================================================= -# STANDARD BACKUP STEPS +# DECLARE DATA AND CONF FILES TO BACKUP +#================================================= +ynh_print_info --message="Declaring files to be backed up..." + #================================================= # BACKUP THE APP MAIN DIR #================================================= -ynh_script_progression --message="Backing up the main app directory..." --time --weight=1 ynh_backup --src_path="$final_path" #================================================= # BACKUP THE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Backing up nginx web server configuration..." --time --weight=1 ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # BACKUP THE PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Backing up php-fpm configuration..." --time --weight=1 ynh_backup --src_path="/etc/php/${YNH_PHP_VERSION}/fpm/pool.d/$app.conf" #================================================= # BACKUP THE MYSQL DATABASE #================================================= -ynh_script_progression --message="Backing up the MySQL database..." --time --weight=1 +ynh_print_info --message="Backing up the MySQL database..." ynh_mysql_dump_db --database="$db_name" > db.sql -#================================================= -# SPECIFIC BACKUP -#================================================= - #================================================= # END OF SCRIPT #================================================= -ynh_script_progression --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." --time --last +ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." diff --git a/scripts/install b/scripts/install index 3afb5ab..5eb33da 100755 --- a/scripts/install +++ b/scripts/install @@ -14,7 +14,6 @@ source /usr/share/yunohost/helpers #================================================= ynh_clean_setup () { - ### Remove this function if there's nothing to clean before calling the remove script. true } # Exit if an error occurs during the execution of the script @@ -30,33 +29,13 @@ admin=$YNH_APP_ARG_ADMIN is_public=$YNH_APP_ARG_IS_PUBLIC language=$YNH_APP_ARG_LANGUAGE -### If it's a multi-instance app, meaning it can be installed several times independently -### The id of the app as stated in the manifest is available as $YNH_APP_ID -### The instance number is available as $YNH_APP_INSTANCE_NUMBER (equals "1", "2", ...) -### The app instance name is available as $YNH_APP_INSTANCE_NAME -### - the first time the app is installed, YNH_APP_INSTANCE_NAME = ynhexample -### - the second time the app is installed, YNH_APP_INSTANCE_NAME = ynhexample__2 -### - ynhexample__{N} for the subsequent installations, with N=3,4, ... -### The app instance name is probably what interests you most, since this is -### guaranteed to be unique. This is a good unique identifier to define installation path, -### db names, ... app=$YNH_APP_INSTANCE_NAME #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= -### About --weight and --time -### ynh_script_progression will show to your final users the progression of each scripts. -### In order to do that, --weight will represent the relative time of execution compared to the other steps in the script. -### --time is a packager option, it will show you the execution time since the previous call. -### This option should be removed before releasing your app. -### Use the execution time, given by --time, to estimate the weight of a step. -### A common way to do it is to set a weight equal to the execution time in second +1. -### The execution time is given for the duration since the previous call. So the weight should be applied to this previous call. ynh_script_progression --message="Validating installation parameters..." --time --weight=1 -### If the app uses nginx as web server (written in HTML/PHP in most cases), the final path should be "/var/www/$app". -### If the app provides an internal web server (or uses another application server such as uwsgi), the final path should be "/opt/yunohost/$app" final_path=/var/www/$app test ! -e "$final_path" || ynh_die "This path already contains a folder" @@ -74,23 +53,11 @@ ynh_app_setting_set --app=$app --key=admin --value=$admin ynh_app_setting_set --app=$app --key=is_public --value=$is_public ynh_app_setting_set --app=$app --key=language --value=$language -#================================================= -# STANDARD MODIFICATIONS -#================================================= - #================================================= # INSTALL DEPENDENCIES #================================================= ynh_script_progression --message="Installing dependencies..." --time --weight=1 -### `ynh_install_app_dependencies` allows you to add any "apt" dependencies to the package. -### Those deb packages will be installed as dependencies of this package. -### If you're not using this helper: -### - Remove the section "REMOVE DEPENDENCIES" in the remove script -### - Remove the variable "pkg_dependencies" in _common.sh -### - As well as the section "REINSTALL DEPENDENCIES" in the restore script -### - And the section "UPGRADE DEPENDENCIES" in the upgrade script - ynh_install_app_dependencies $pkg_dependencies #================================================= @@ -98,15 +65,6 @@ ynh_install_app_dependencies $pkg_dependencies #================================================= ynh_script_progression --message="Creating a MySQL database..." --time --weight=1 -### Use these lines if you need a database for the application. -### `ynh_mysql_setup_db` will create a database, an associated user and a ramdom password. -### The password will be stored as 'mysqlpwd' into the app settings, -### and will be available as $db_pwd -### If you're not using these lines: -### - Remove the section "BACKUP THE MYSQL DATABASE" in the backup script -### - Remove also the section "REMOVE THE MYSQL DATABASE" in the remove script -### - As well as the section "RESTORE THE MYSQL DATABASE" in the restore script - db_name=$(ynh_sanitize_dbid $app) ynh_app_setting_set --app=$app --key=db_name --value=$db_name ynh_mysql_setup_db --db_user=$db_name --db_name=$db_name @@ -116,10 +74,6 @@ ynh_mysql_setup_db --db_user=$db_name --db_name=$db_name #================================================= ynh_script_progression --message="Setting up source files..." --time --weight=1 -### `ynh_setup_source` is used to install an app from a zip or tar.gz file, -### downloaded from an upstream source, like a git repository. -### `ynh_setup_source` use the file conf/app.src - ynh_app_setting_set --app=$app --key=final_path --value=$final_path # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" @@ -129,8 +83,6 @@ ynh_setup_source --dest_dir="$final_path" #================================================= ynh_script_progression --message="Configuring nginx web server..." --time --weight=1 -### `ynh_add_nginx_config` will use the file conf/nginx.conf - # Create a dedicated nginx config ynh_add_nginx_config YNH_PHP_VERSION @@ -147,17 +99,6 @@ ynh_system_user_create --username=$app #================================================= ynh_script_progression --message="Configuring php-fpm..." --time --weight=1 -### `ynh_add_fpm_config` is used to set up a PHP config. -### You can remove it if your app doesn't use PHP. -### `ynh_add_fpm_config` will use the files conf/php-fpm.conf and conf/php-fpm.ini -### If you're not using these lines: -### - You can remove these files in conf/. -### - Remove the section "BACKUP THE PHP-FPM CONFIGURATION" in the backup script -### - Remove also the section "REMOVE PHP-FPM CONFIGURATION" in the remove script -### - As well as the section "RESTORE THE PHP-FPM CONFIGURATION" in the restore script -### With the reload at the end of the script. -### - And the section "PHP-FPM CONFIGURATION" in the upgrade script - # Create a dedicated php-fpm config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" @@ -171,10 +112,6 @@ ynh_script_progression --message="Installing composer..." --time --weight=1 # Install composer ynh_install_composer -#================================================= -# MODIFY A CONFIG FILE -#================================================= - #================================================= # SPECIFIC SETUP #================================================= @@ -183,7 +120,7 @@ ynh_install_composer email=$(ynh_user_get_info $admin 'mail') # setup application config -sudo cp ../conf/.env $final_path/.env +cp ../conf/.env $final_path/.env db_name=$(ynh_sanitize_dbid $app) @@ -203,10 +140,6 @@ ynh_replace_string "__LANGUAGE__" "$language" "$final_path/.env" # STORE THE CONFIG FILE CHECKSUM #================================================= -### `ynh_store_file_checksum` is used to store the checksum of a file. -### That way, during the upgrade script, by using `ynh_backup_if_checksum_is_different`, -### you can make a backup of this file before modifying it again if the admin had modified it. - # Calculate and store the config file checksum into the app settings ynh_store_file_checksum "$final_path/.env" @@ -216,10 +149,6 @@ ynh_store_file_checksum "$final_path/.env" # SECURE FILES AND DIRECTORIES #================================================= -### For security reason, any app should set the permissions to root: before anything else. -### Then, if write authorization is needed, any access should be given only to directories -### that really need such authorization. - # Set permissions to app files chown -R $app: $final_path chmod -R 755 $final_path/storage diff --git a/scripts/remove b/scripts/remove index 572caa5..9316285 100755 --- a/scripts/remove +++ b/scripts/remove @@ -65,10 +65,6 @@ ynh_script_progression --message="Removing php-fpm configuration" --time --weigh # Remove the dedicated php-fpm config ynh_remove_fpm_config -#================================================= -# SPECIFIC REMOVE -#================================================= - #================================================= # GENERIC FINALIZATION #================================================= diff --git a/scripts/restore b/scripts/restore index 933c5a1..9948497 100755 --- a/scripts/restore +++ b/scripts/restore @@ -6,7 +6,6 @@ # IMPORT GENERIC HELPERS #================================================= -#Keep this path for calling _common.sh inside the execution's context of backup and restore scripts source ../settings/scripts/_common.sh source /usr/share/yunohost/helpers @@ -14,11 +13,6 @@ source /usr/share/yunohost/helpers # MANAGE SCRIPT FAILURE #================================================= -ynh_clean_setup () { - #### Remove this function if there's nothing to clean before calling the remove script. - true -} -# Exit if an error occurs during the execution of the script ynh_abort_if_errors #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 2fbfc42..392b317 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -28,12 +28,6 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) # CHECK VERSION #================================================= -### This helper will compare the version of the currently installed app and the version of the upstream package. -### $upgrade_type can have 2 different values -### - UPGRADE_APP if the upstream app version has changed -### - UPGRADE_PACKAGE if only the YunoHost package has changed -### ynh_check_app_version_changed will stop the upgrade if the app is up to date. -### UPGRADE_APP should be used to upgrade the core app only if there's an upgrade to do. upgrade_type=$(ynh_check_app_version_changed) #================================================= @@ -76,18 +70,6 @@ ynh_clean_setup () { # Exit if an error occurs during the execution of the script ynh_abort_if_errors -#================================================= -# CHECK THE PATH -#================================================= - -# Normalize the URL path syntax -# N.B. : this is for app installations before YunoHost 2.7 -# where this value might be something like /foo/ or foo/ -# instead of /foo .... -# If nobody installed your app before 2.7, then you may -# safely remove this line -path_url=$(ynh_normalize_url_path --path_url=$path_url) - #================================================= # STANDARD UPGRADE STEPS #================================================= @@ -108,7 +90,7 @@ fi ynh_script_progression --message="Upgrading nginx web server configuration..." --time --weight=1 # Create a dedicated nginx config -ynh_add_nginx_config YNH_PHP_VERSION +ynh_add_nginx_config #================================================= # UPGRADE DEPENDENCIES @@ -155,11 +137,9 @@ ynh_backup_if_checksum_is_different --file="$final_path/.env" # Recalculate and store the checksum of the file for the next upgrade. ynh_store_file_checksum --file="$final_path/.env" - #================================================= # GENERIC FINALIZATION #================================================= -#================================================= # SECURE FILES AND DIRECTORIES #================================================= From 9bc23a280be8b025f42c9d599915f6e7d1e81512 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 19 Oct 2020 09:19:03 +0200 Subject: [PATCH 02/16] small typos --- README.md | 4 ++-- scripts/backup | 3 +-- scripts/install | 18 +++++++----------- scripts/remove | 14 ++++++-------- scripts/restore | 8 ++++---- scripts/upgrade | 16 ++++++++-------- 6 files changed, 28 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 542a36f..7813c18 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -This is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. It is built on Laravel 5.4. +Snipe-IT is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. It is built on Laravel 5.4. **Shipped version:** 4.9.5 @@ -34,7 +34,7 @@ This is a FOSS project for asset management in IT Operations. Knowing who has wh * Report a bug: https://github.com/YunoHost-Apps/snipeit_ynh/issues * Snipe-IT website: https://snipeitapp.com/ - * Github reop for Snipe-IT: https://github.com/snipe/snipe-it + * GitHub reop for Snipe-IT: https://github.com/snipe/snipe-it * YunoHost website: https://yunohost.org/ --- diff --git a/scripts/backup b/scripts/backup index 6f3ff9f..12128ac 100755 --- a/scripts/backup +++ b/scripts/backup @@ -6,7 +6,6 @@ # IMPORT GENERIC HELPERS #================================================= -#Keep this path for calling _common.sh inside the execution's context of backup and restore scripts source ../settings/scripts/_common.sh source /usr/share/yunohost/helpers @@ -61,4 +60,4 @@ ynh_mysql_dump_db --database="$db_name" > db.sql # END OF SCRIPT #================================================= -ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." +ynh_print_info --message="Backup script completed for Snipe-IT. (YunoHost will then actually copy those files to the archive)." diff --git a/scripts/install b/scripts/install index 5eb33da..1ab98a5 100755 --- a/scripts/install +++ b/scripts/install @@ -13,10 +13,6 @@ source /usr/share/yunohost/helpers # MANAGE SCRIPT FAILURE #================================================= -ynh_clean_setup () { - true -} -# Exit if an error occurs during the execution of the script ynh_abort_if_errors #================================================= @@ -81,9 +77,9 @@ ynh_setup_source --dest_dir="$final_path" #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Configuring nginx web server..." --time --weight=1 +ynh_script_progression --message="Configuring NGINX web server..." --time --weight=1 -# Create a dedicated nginx config +# Create a dedicated NGINX config ynh_add_nginx_config YNH_PHP_VERSION #================================================= @@ -97,9 +93,9 @@ ynh_system_user_create --username=$app #================================================= # PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Configuring php-fpm..." --time --weight=1 +ynh_script_progression --message="Configuring PHP-FPM..." --time --weight=1 -# Create a dedicated php-fpm config +# Create a dedicated PHP-FPM config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" #================================================= @@ -107,7 +103,7 @@ ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --p #================================================= # INSTALL AND INITIALIZE COMPOSER #================================================= -ynh_script_progression --message="Installing composer..." --time --weight=1 +ynh_script_progression --message="Installing Composer..." --time --weight=1 # Install composer ynh_install_composer @@ -169,7 +165,7 @@ fi #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server..." --time --weight=1 ynh_systemd_action --service_name=nginx --action=reload @@ -177,4 +173,4 @@ ynh_systemd_action --service_name=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression --message="Installation of $app completed" --time --last +ynh_script_progression --message="Installation of Snipe-IT completed" --last diff --git a/scripts/remove b/scripts/remove index 9316285..9fd9346 100755 --- a/scripts/remove +++ b/scripts/remove @@ -23,8 +23,6 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path) #================================================= # STANDARD REMOVE -#================================================= - #================================================= # REMOVE THE MYSQL DATABASE #================================================= @@ -44,7 +42,7 @@ ynh_remove_app_dependencies #================================================= # REMOVE APP MAIN DIR #================================================= -ynh_script_progression --message="Removing app main directory" --time --weight=1 +ynh_script_progression --message="Removing Snipe-IT main directory" --time --weight=1 # Remove the app directory securely ynh_secure_remove --file="$final_path" @@ -52,17 +50,17 @@ ynh_secure_remove --file="$final_path" #================================================= # REMOVE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Removing nginx web server configuration" --time --weight=1 +ynh_script_progression --message="Removing NGINX web server configuration" --time --weight=1 -# Remove the dedicated nginx config +# Remove the dedicated NGINX config ynh_remove_nginx_config #================================================= # REMOVE PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Removing php-fpm configuration" --time --weight=1 +ynh_script_progression --message="Removing PHP-FPM configuration" --time --weight=1 -# Remove the dedicated php-fpm config +# Remove the dedicated PHP-FPM config ynh_remove_fpm_config #================================================= @@ -79,4 +77,4 @@ ynh_system_user_delete --username=$app # END OF SCRIPT #================================================= -ynh_script_progression --message="Removal of $app completed" --time --last +ynh_script_progression --message="Removal ofSnipe-IT completed" --last diff --git a/scripts/restore b/scripts/restore index 9948497..8c561ce 100755 --- a/scripts/restore +++ b/scripts/restore @@ -48,7 +48,7 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # RESTORE THE APP MAIN DIR #================================================= -ynh_script_progression --message="Restoring the app main directory..." --time --weight=1 +ynh_script_progression --message="Restoring Snipe-IT main directory..." --time --weight=1 ynh_restore_file --origin_path="$final_path" @@ -80,7 +80,7 @@ ynh_install_app_dependencies $pkg_dependencies #================================================= # RESTORE THE PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Reconfiguring php-fpm..." --time --weight=1 +ynh_script_progression --message="Reconfiguring PHP-FPM..." --time --weight=1 # Restore the file first, so it can have a backup if different ynh_restore_file --origin_path="/etc/php/$YNH_PHP_VERSION/fpm/pool.d/$app.conf" @@ -101,7 +101,7 @@ ynh_mysql_connect_as --user=$db_name --password=$db_pwd --database=$db_name < ./ #================================================= # RELOAD NGINX AND PHP-FPM #================================================= -ynh_script_progression --message="Reloading nginx web server and php-fpm..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --time --weight=1 ynh_systemd_action --service_name=php${YNH_PHP_VERSION}-fpm --action=reload ynh_systemd_action --service_name=nginx --action=reload @@ -110,4 +110,4 @@ ynh_systemd_action --service_name=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression --message="Restoration completed for $app" --time --last +ynh_script_progression --message="Restoration completed for Snipe-IT" --last diff --git a/scripts/upgrade b/scripts/upgrade index 392b317..67ca7fa 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -59,7 +59,7 @@ fi #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= -ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." --time --weight=1 +ynh_script_progression --message="Backing up Snipe-IT before upgrading (may take a while)..." --time --weight=1 # Backup the current version of the app ynh_backup_before_upgrade @@ -87,9 +87,9 @@ fi #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading nginx web server configuration..." --time --weight=1 +ynh_script_progression --message="Upgrading NGINS web server configuration..." --time --weight=1 -# Create a dedicated nginx config +# Create a dedicated NGINX config ynh_add_nginx_config #================================================= @@ -110,9 +110,9 @@ ynh_system_user_create --username=$app #================================================= # PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading php-fpm configuration..." --time --weight=1 +ynh_script_progression --message="Upgrading PHP-FPM configuration..." --time --weight=1 -# Create a dedicated php-fpm config +# Create a dedicated PHP-FPM config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" #================================================= @@ -120,7 +120,7 @@ ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --p #================================================= # INSTALL AND INITIALIZE COMPOSER #================================================= -ynh_script_progression --message="Installing composer..." --time --weight=1 +ynh_script_progression --message="Installing Composer..." --time --weight=1 # Install composer ynh_install_composer @@ -163,7 +163,7 @@ fi #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server..." --time --weight=1 ynh_systemd_action --service_name=nginx --action=reload @@ -171,4 +171,4 @@ ynh_systemd_action --service_name=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression --message="Upgrade of $app completed" --time --last +ynh_script_progression --message="Upgrade of Snipe-IT completed" --last From f6a12ece8e3d90e95e5758589a27b970f49f9bf5 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 19 Oct 2020 09:40:19 +0200 Subject: [PATCH 03/16] Fix time --- scripts/install | 29 +++++++++++++++-------------- scripts/remove | 14 +++++++------- scripts/restore | 16 ++++++++-------- scripts/upgrade | 30 +++++++++--------------------- 4 files changed, 39 insertions(+), 50 deletions(-) diff --git a/scripts/install b/scripts/install index 1ab98a5..700328e 100755 --- a/scripts/install +++ b/scripts/install @@ -30,7 +30,7 @@ app=$YNH_APP_INSTANCE_NAME #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= -ynh_script_progression --message="Validating installation parameters..." --time --weight=1 +ynh_script_progression --message="Validating installation parameters..." --weight=1 final_path=/var/www/$app test ! -e "$final_path" || ynh_die "This path already contains a folder" @@ -41,7 +41,7 @@ ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url #================================================= # STORE SETTINGS FROM MANIFEST #================================================= -ynh_script_progression --message="Storing installation settings..." --time --weight=1 +ynh_script_progression --message="Storing installation settings..." --weight=2 ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url @@ -52,14 +52,14 @@ ynh_app_setting_set --app=$app --key=language --value=$language #================================================= # INSTALL DEPENDENCIES #================================================= -ynh_script_progression --message="Installing dependencies..." --time --weight=1 +ynh_script_progression --message="Installing dependencies..." --weight=3 ynh_install_app_dependencies $pkg_dependencies #================================================= # CREATE A MYSQL DATABASE #================================================= -ynh_script_progression --message="Creating a MySQL database..." --time --weight=1 +ynh_script_progression --message="Creating a MySQL database..." --weight=8 db_name=$(ynh_sanitize_dbid $app) ynh_app_setting_set --app=$app --key=db_name --value=$db_name @@ -68,7 +68,7 @@ ynh_mysql_setup_db --db_user=$db_name --db_name=$db_name #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= -ynh_script_progression --message="Setting up source files..." --time --weight=1 +ynh_script_progression --message="Setting up source files..." --weight=2 ynh_app_setting_set --app=$app --key=final_path --value=$final_path # Download, check integrity, uncompress and patch the source from app.src @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Configuring NGINX web server..." --time --weight=1 +ynh_script_progression --message="Configuring NGINX web server..." --weight=5 # Create a dedicated NGINX config ynh_add_nginx_config YNH_PHP_VERSION @@ -85,7 +85,7 @@ ynh_add_nginx_config YNH_PHP_VERSION #================================================= # CREATE DEDICATED USER #================================================= -ynh_script_progression --message="Configuring system user..." --time --weight=1 +ynh_script_progression --message="Configuring system user..." --weight=3 # Create a system user ynh_system_user_create --username=$app @@ -93,7 +93,7 @@ ynh_system_user_create --username=$app #================================================= # PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Configuring PHP-FPM..." --time --weight=1 +ynh_script_progression --message="Configuring PHP-FPM..." --weight=1 # Create a dedicated PHP-FPM config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" @@ -103,7 +103,7 @@ ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --p #================================================= # INSTALL AND INITIALIZE COMPOSER #================================================= -ynh_script_progression --message="Installing Composer..." --time --weight=1 +ynh_script_progression --message="Installing Composer..." --weight=21 # Install composer ynh_install_composer @@ -153,19 +153,20 @@ chmod -R 755 $final_path/public/uploads #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Configuring SSOwat..." --time --weight=1 +ynh_script_progression --message="Configuring SSOwat..." --weight=33 -# Make app public if necessary +# Make app public if necessary or protect it if [ $is_public -eq 1 ] then - # unprotected_uris allows SSO credentials to be passed anyway. - ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" + # Everyone can access the app. + # The "main" permission is automatically created before the install script. + ynh_permission_update --permission "main" --add "visitors" fi #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading NGINX web server..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server..." --weight=1 ynh_systemd_action --service_name=nginx --action=reload diff --git a/scripts/remove b/scripts/remove index 9fd9346..4fadaa3 100755 --- a/scripts/remove +++ b/scripts/remove @@ -12,7 +12,7 @@ source /usr/share/yunohost/helpers #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." --time --weight=1 +ynh_script_progression --message="Loading installation settings..." --weight=1 app=$YNH_APP_INSTANCE_NAME @@ -26,7 +26,7 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path) #================================================= # REMOVE THE MYSQL DATABASE #================================================= -ynh_script_progression --message="Removing the MySQL database" --time --weight=1 +ynh_script_progression --message="Removing the MySQL database" --weight=1 # Remove a database if it exists, along with the associated user ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name @@ -34,7 +34,7 @@ ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name #================================================= # REMOVE DEPENDENCIES #================================================= -ynh_script_progression --message="Removing dependencies" --time --weight=1 +ynh_script_progression --message="Removing dependencies" --weight=2 # Remove metapackage and its dependencies ynh_remove_app_dependencies @@ -42,7 +42,7 @@ ynh_remove_app_dependencies #================================================= # REMOVE APP MAIN DIR #================================================= -ynh_script_progression --message="Removing Snipe-IT main directory" --time --weight=1 +ynh_script_progression --message="Removing Snipe-IT main directory" --weight=5 # Remove the app directory securely ynh_secure_remove --file="$final_path" @@ -50,7 +50,7 @@ ynh_secure_remove --file="$final_path" #================================================= # REMOVE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Removing NGINX web server configuration" --time --weight=1 +ynh_script_progression --message="Removing NGINX web server configuration" --weight=1 # Remove the dedicated NGINX config ynh_remove_nginx_config @@ -58,7 +58,7 @@ ynh_remove_nginx_config #================================================= # REMOVE PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Removing PHP-FPM configuration" --time --weight=1 +ynh_script_progression --message="Removing PHP-FPM configuration" --weight=2 # Remove the dedicated PHP-FPM config ynh_remove_fpm_config @@ -68,7 +68,7 @@ ynh_remove_fpm_config #================================================= # REMOVE DEDICATED USER #================================================= -ynh_script_progression --message="Removing the dedicated system user" --time --weight=1 +ynh_script_progression --message="Removing the dedicated system user" --weight=1 # Delete a system user ynh_system_user_delete --username=$app diff --git a/scripts/restore b/scripts/restore index 8c561ce..c015f6a 100755 --- a/scripts/restore +++ b/scripts/restore @@ -18,7 +18,7 @@ ynh_abort_if_errors #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading settings..." --time --weight=1 +ynh_script_progression --message="Loading settings..." --weight=1 app=$YNH_APP_INSTANCE_NAME @@ -30,7 +30,7 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) #================================================= # CHECK IF THE APP CAN BE RESTORED #================================================= -ynh_script_progression --message="Validating restoration parameters..." --time --weight=1 +ynh_script_progression --message="Validating restoration parameters..." --weight=2 ynh_webpath_available --domain=$domain --path_url=$path_url \ || ynh_die --message="Path not available: ${domain}${path_url}" @@ -48,14 +48,14 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # RESTORE THE APP MAIN DIR #================================================= -ynh_script_progression --message="Restoring Snipe-IT main directory..." --time --weight=1 +ynh_script_progression --message="Restoring Snipe-IT main directory..." --weight=7 ynh_restore_file --origin_path="$final_path" #================================================= # RECREATE THE DEDICATED USER #================================================= -ynh_script_progression --message="Recreating the dedicated system user..." --time --weight=1 +ynh_script_progression --message="Recreating the dedicated system user..." --weight=2 # Create the dedicated user (if not existing) ynh_system_user_create --username=$app @@ -72,7 +72,7 @@ chown -R $app: $final_path #================================================= # REINSTALL DEPENDENCIES #================================================= -ynh_script_progression --message="Reinstalling dependencies..." --time --weight=1 +ynh_script_progression --message="Reinstalling dependencies..." --weight=8 # Define and install dependencies ynh_install_app_dependencies $pkg_dependencies @@ -80,7 +80,7 @@ ynh_install_app_dependencies $pkg_dependencies #================================================= # RESTORE THE PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Reconfiguring PHP-FPM..." --time --weight=1 +ynh_script_progression --message="Reconfiguring PHP-FPM..." --weight=1 # Restore the file first, so it can have a backup if different ynh_restore_file --origin_path="/etc/php/$YNH_PHP_VERSION/fpm/pool.d/$app.conf" @@ -90,7 +90,7 @@ ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --p #================================================= # RESTORE THE MYSQL DATABASE #================================================= -ynh_script_progression --message="Restoring the MySQL database..." --time --weight=1 +ynh_script_progression --message="Restoring the MySQL database..." --weight=3 db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) ynh_mysql_setup_db --db_user=$db_name --db_name=$db_name --db_pwd=$db_pwd @@ -101,7 +101,7 @@ ynh_mysql_connect_as --user=$db_name --password=$db_pwd --database=$db_name < ./ #================================================= # RELOAD NGINX AND PHP-FPM #================================================= -ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1 ynh_systemd_action --service_name=php${YNH_PHP_VERSION}-fpm --action=reload ynh_systemd_action --service_name=nginx --action=reload diff --git a/scripts/upgrade b/scripts/upgrade index 67ca7fa..fb34555 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -12,7 +12,7 @@ source /usr/share/yunohost/helpers #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." --time --weight=1 +ynh_script_progression --message="Loading installation settings..." --weight=1 app=$YNH_APP_INSTANCE_NAME @@ -33,7 +33,7 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= -ynh_script_progression --message="Ensuring downward compatibility..." --time --weight=1 +ynh_script_progression --message="Ensuring downward compatibility..." --weight=1 # Fix is_public as a boolean value if [ "$is_public" = "Yes" ]; then @@ -59,7 +59,7 @@ fi #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= -ynh_script_progression --message="Backing up Snipe-IT before upgrading (may take a while)..." --time --weight=1 +ynh_script_progression --message="Backing up Snipe-IT before upgrading (may take a while)..." --weight=4 # Backup the current version of the app ynh_backup_before_upgrade @@ -78,7 +78,7 @@ ynh_abort_if_errors if [ "$upgrade_type" == "UPGRADE_APP" ] then - ynh_script_progression --message="Upgrading source files..." --time --weight=1 + ynh_script_progression --message="Upgrading source files..." --weight=7 # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" @@ -87,7 +87,7 @@ fi #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading NGINS web server configuration..." --time --weight=1 +ynh_script_progression --message="Upgrading NGINS web server configuration..." --weight=3 # Create a dedicated NGINX config ynh_add_nginx_config @@ -95,7 +95,7 @@ ynh_add_nginx_config #================================================= # UPGRADE DEPENDENCIES #================================================= -ynh_script_progression --message="Upgrading dependencies..." --time --weight=1 +ynh_script_progression --message="Upgrading dependencies..." --weight=3 ynh_install_app_dependencies $pkg_dependencies @@ -110,7 +110,7 @@ ynh_system_user_create --username=$app #================================================= # PHP-FPM CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading PHP-FPM configuration..." --time --weight=1 +ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=2 # Create a dedicated PHP-FPM config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" @@ -120,7 +120,7 @@ ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --p #================================================= # INSTALL AND INITIALIZE COMPOSER #================================================= -ynh_script_progression --message="Installing Composer..." --time --weight=1 +ynh_script_progression --message="Installing Composer..." --weight=15 # Install composer ynh_install_composer @@ -148,22 +148,10 @@ chown -R $app: $final_path chmod -R 755 $final_path/storage chmod -R 755 $final_path/public/uploads -#================================================= -# SETUP SSOWAT -#================================================= -ynh_script_progression --message="Upgrading SSOwat configuration..." --time --weight=1 - -# Make app public if necessary -if [ $is_public -eq 1 ] -then - # unprotected_uris allows SSO credentials to be passed anyway - ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" -fi - #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading NGINX web server..." --time --weight=1 +ynh_script_progression --message="Reloading NGINX web server..." --weight=1 ynh_systemd_action --service_name=nginx --action=reload From bd16c17b49602907912fc76eb9ec5849796a2afa Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 19 Oct 2020 10:50:50 +0200 Subject: [PATCH 04/16] fix --- scripts/install | 14 ++++++-------- scripts/upgrade | 2 +- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/scripts/install b/scripts/install index 700328e..9e57038 100755 --- a/scripts/install +++ b/scripts/install @@ -80,7 +80,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=5 # Create a dedicated NGINX config -ynh_add_nginx_config YNH_PHP_VERSION +ynh_add_nginx_config #================================================= # CREATE DEDICATED USER @@ -118,13 +118,11 @@ email=$(ynh_user_get_info $admin 'mail') # setup application config cp ../conf/.env $final_path/.env -db_name=$(ynh_sanitize_dbid $app) - -ynh_replace_string "__DB_NAME__" "$db_name" "$final_path/.env" -ynh_replace_string "__DB_PASS__" "$db_pwd" "$final_path/.env" -ynh_replace_string "__DB_USER__" "$db_name" "$final_path/.env" -ynh_replace_string "yunodomain" "$domain" "$final_path/.env" -ynh_replace_string "__LANGUAGE__" "$language" "$final_path/.env" +ynh_replace_string --match_string="__DB_NAME__" --replace_string="$db_name" --target_file="$final_path/.env" +ynh_replace_string --match_string="__DB_PASS__" --replace_string="$db_pwd" --target_file="$final_path/.env" +ynh_replace_string --match_string="__DB_USER__" --replace_string="$db_name" --target_file="$final_path/.env" +ynh_replace_string --match_string="yunodomain" --replace_string="$domain" --target_file="$final_path/.env" +ynh_replace_string --match_string="__LANGUAGE__" --replace_string="$language" --target_file="$final_path/.env" # setup application config ( cd $final_path && php$YNH_PHP_VERSION artisan key:generate -n --force --env) diff --git a/scripts/upgrade b/scripts/upgrade index fb34555..2ae6dd9 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -87,7 +87,7 @@ fi #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading NGINS web server configuration..." --weight=3 +ynh_script_progression --message="Upgrading NGINX web server configuration..." --weight=3 # Create a dedicated NGINX config ynh_add_nginx_config From b2c5b653b63e4bfc8915af90f3cfdb81e0c1b755 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 1 Nov 2020 12:37:36 +0100 Subject: [PATCH 05/16] Small fixes --- conf/.env | 6 +++--- manifest.json | 2 +- scripts/backup | 3 ++- scripts/install | 13 ++++++++----- scripts/restore | 3 ++- scripts/upgrade | 9 ++++++--- 6 files changed, 22 insertions(+), 14 deletions(-) diff --git a/conf/.env b/conf/.env index d5add3f..129bc5d 100644 --- a/conf/.env +++ b/conf/.env @@ -4,7 +4,7 @@ APP_ENV=production APP_DEBUG=false APP_KEY=ChangeMe -APP_URL= +APP_URL=http://__DOMAIN__ APP_TIMEZONE='UTC' APP_LOCALE=__LANGUAGE__ @@ -39,9 +39,9 @@ MAIL_PORT=25 MAIL_USERNAME= MAIL_PASSWORD= MAIL_ENCRYPTION=null -MAIL_FROM_ADDR=snipeit@yunodomain +MAIL_FROM_ADDR=snipeit@__DOMAIN__ MAIL_FROM_NAME='Snip-IT' -MAIL_REPLYTO_ADDR=snipeit@yunodomain +MAIL_REPLYTO_ADDR=snipeit@__DOMAIN__ MAIL_REPLYTO_NAME='Snipe-IT' # -------------------------------------------- diff --git a/manifest.json b/manifest.json index 0e6b82c..e84b48d 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "anmol@datamol.org" }, "requirements": { - "yunohost": ">= 3.8" + "yunohost": ">= 3.8.1" }, "multi_instance": true, "services": [ diff --git a/scripts/backup b/scripts/backup index 12128ac..84e5d45 100755 --- a/scripts/backup +++ b/scripts/backup @@ -25,6 +25,7 @@ app=$YNH_APP_INSTANCE_NAME final_path=$(ynh_app_setting_get --app=$app --key=final_path) domain=$(ynh_app_setting_get --app=$app --key=domain) db_name=$(ynh_app_setting_get --app=$app --key=db_name) +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # DECLARE DATA AND CONF FILES TO BACKUP @@ -47,7 +48,7 @@ ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" # BACKUP THE PHP-FPM CONFIGURATION #================================================= -ynh_backup --src_path="/etc/php/${YNH_PHP_VERSION}/fpm/pool.d/$app.conf" +ynh_backup --src_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" #================================================= # BACKUP THE MYSQL DATABASE diff --git a/scripts/install b/scripts/install index 9e57038..68b7ad5 100755 --- a/scripts/install +++ b/scripts/install @@ -97,6 +97,7 @@ ynh_script_progression --message="Configuring PHP-FPM..." --weight=1 # Create a dedicated PHP-FPM config ynh_add_fpm_config --usage=low --footprint=low --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # SPECIFIC SETUP @@ -121,14 +122,16 @@ cp ../conf/.env $final_path/.env ynh_replace_string --match_string="__DB_NAME__" --replace_string="$db_name" --target_file="$final_path/.env" ynh_replace_string --match_string="__DB_PASS__" --replace_string="$db_pwd" --target_file="$final_path/.env" ynh_replace_string --match_string="__DB_USER__" --replace_string="$db_name" --target_file="$final_path/.env" -ynh_replace_string --match_string="yunodomain" --replace_string="$domain" --target_file="$final_path/.env" +ynh_replace_string --match_string="__DOMAIN__" --replace_string="$domain" --target_file="$final_path/.env" ynh_replace_string --match_string="__LANGUAGE__" --replace_string="$language" --target_file="$final_path/.env" # setup application config -( cd $final_path && php$YNH_PHP_VERSION artisan key:generate -n --force --env) -( cd $final_path && php$YNH_PHP_VERSION artisan migrate -n --force) -( cd $final_path && php$YNH_PHP_VERSION artisan config:clear -n) -( cd $final_path && php$YNH_PHP_VERSION artisan config:cache -n) +pushd "$final_path" + php$phpversion artisan key:generate -n --force --env + php$phpversion artisan migrate -n --force + php$phpversion artisan config:clear -n + php$phpversion artisan config:cache -n +popd #================================================= # STORE THE CONFIG FILE CHECKSUM diff --git a/scripts/restore b/scripts/restore index c015f6a..118113d 100755 --- a/scripts/restore +++ b/scripts/restore @@ -26,6 +26,7 @@ domain=$(ynh_app_setting_get --app=$app --key=domain) path_url=$(ynh_app_setting_get --app=$app --key=path) final_path=$(ynh_app_setting_get --app=$app --key=final_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # CHECK IF THE APP CAN BE RESTORED @@ -103,7 +104,7 @@ ynh_mysql_connect_as --user=$db_name --password=$db_pwd --database=$db_name < ./ #================================================= ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1 -ynh_systemd_action --service_name=php${YNH_PHP_VERSION}-fpm --action=reload +ynh_systemd_action --service_name=php$phpversion-fpm --action=reload ynh_systemd_action --service_name=nginx --action=reload #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 2ae6dd9..9666da7 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -23,6 +23,7 @@ is_public=$(ynh_app_setting_get --app=$app --key=is_public) final_path=$(ynh_app_setting_get --app=$app --key=final_path) language=$(ynh_app_setting_get --app=$app --key=language) db_name=$(ynh_app_setting_get --app=$app --key=db_name) +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # CHECK VERSION @@ -127,9 +128,11 @@ ynh_install_composer ynh_exec_warn_less ynh_composer_exec --commands=\"dump-autoload\" -( cd $final_path && php$YNH_PHP_VERSION artisan migrate -n --force) -( cd $final_path && php$YNH_PHP_VERSION artisan config:clear -n ) -( cd $final_path && php$YNH_PHP_VERSION artisan config:cache -n ) +pushd "$final_path" + php$phpversion artisan migrate -n --force + php$phpversion artisan config:clear -n + php$phpversion artisan config:cache -n +popd ### Verify the checksum of a file, stored by `ynh_store_file_checksum` in the install script. ### And create a backup of this file if the checksum is different. So the file will be backed up if the admin had modified it. From aac7aaebe9abe4392592f2c5b3592edee83faec0 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 1 Nov 2020 13:48:16 +0100 Subject: [PATCH 06/16] Remove multi_instance --- check_process | 2 +- manifest.json | 2 +- scripts/upgrade | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/check_process b/check_process index 7c39ec0..7f3f978 100644 --- a/check_process +++ b/check_process @@ -20,7 +20,7 @@ upgrade=1 upgrade=1 from_commit=f0ce10dd27b78009dd754c4210111aa0eff12ad9 backup_restore=1 - multi_instance=1 + multi_instance=0 incorrect_path=1 port_already_use=0 change_url=0 diff --git a/manifest.json b/manifest.json index e84b48d..0afb2e1 100644 --- a/manifest.json +++ b/manifest.json @@ -16,7 +16,7 @@ "requirements": { "yunohost": ">= 3.8.1" }, - "multi_instance": true, + "multi_instance": false, "services": [ "nginx", "php7.0-fpm", diff --git a/scripts/upgrade b/scripts/upgrade index 9666da7..52b95ea 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -103,7 +103,7 @@ ynh_install_app_dependencies $pkg_dependencies #================================================= # CREATE DEDICATED USER #================================================= -ynh_script_progression --message="Making sure dedicated system user exists..." --time --weight=1 +ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1 # Create a dedicated user (if not existing) ynh_system_user_create --username=$app From 2593911faa436a3ca140a7cf67ebcd52c46a3659 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 9 Nov 2020 11:09:35 +0100 Subject: [PATCH 07/16] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 0afb2e1..3a89ad3 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "anmol@datamol.org" }, "requirements": { - "yunohost": ">= 3.8.1" + "yunohost": ">= 4.0.0" }, "multi_instance": false, "services": [ From a8f4319982a931d89e4e1c12bc56f0e924b98677 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 9 Nov 2020 11:12:19 +0100 Subject: [PATCH 08/16] Upgrade to 5.0.4 --- README.md | 2 +- conf/app.src | 4 ++-- issue_template.md | 6 +++--- manifest.json | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 0e0473b..1c8d02f 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in ## Overview Snipe-IT is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. It is built on Laravel 5.4. -**Shipped version:** 4.9.5 +**Shipped version:** 5.0.4 ## Screenshots diff --git a/conf/app.src b/conf/app.src index bf51e7a..ed58018 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/snipe/snipe-it/archive/v4.9.5.tar.gz -SOURCE_SUM=0f277dc712af511a90d722e0f3fc7ab1731356f823b9122c7df8eca85892ce5d +SOURCE_URL=https://github.com/snipe/snipe-it/archive/v5.0.4.tar.gz +SOURCE_SUM=b06eef8d8f7a3063d93ebfcfe10c1d238c8879d555d0b48e01cc854e9d3d1d44 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/issue_template.md b/issue_template.md index b1cc06e..a975880 100644 --- a/issue_template.md +++ b/issue_template.md @@ -7,7 +7,7 @@ about: When creating a bug report, please use the following template to provide **How to post a meaningful bug report** 1. *Read this whole template first.* 2. *Make sure you are on the right place:* - - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change url...), you are on the right place!* + - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - *Otherwise, the issue may be due to the app itself. Refer to its documentation or repository for help.* - *In doubt, ask here and we will figure it out together.* 3. *Delete these italic comments as you write over them below, and remove this guide.* @@ -36,8 +36,8 @@ about: When creating a bug report, please use the following template to provide - *If you used the webadmin, please perform the equivalent command from the CLI first.* - *If the error occurs in your browser, explain what you did:* 1. *Go to '...'* - 2. *Click on '....'* - 3. *Scroll down to '....'* + 2. *Click on '...'* + 3. *Scroll down to '...'* 4. *See error* ### Expected behavior diff --git a/manifest.json b/manifest.json index 3a89ad3..f742d29 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Manage assets for IT operations", "fr": "Gestionnaire de ressources informatiques" }, - "version": "4.9.5~ynh1", + "version": "5.0.4~ynh1", "url": "https://snipeitapp.com/", "license": "MIT", "maintainer": { From baa97005028927b3040a7fc42d24936740050198 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 14 Dec 2020 20:52:35 +0100 Subject: [PATCH 09/16] fix linter warnings --- scripts/_common.sh | 3 +-- scripts/upgrade | 7 ------- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index a2238f5..2f36635 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -30,8 +30,7 @@ exec_as() { if [[ $USER = $(whoami) ]]; then eval $@ else - # use sudo twice to be root and be allowed to use another user - sudo sudo -u "$USER" $@ + sudo -u "$USER" $@ fi } diff --git a/scripts/upgrade b/scripts/upgrade index e4d7eff..6129e57 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -72,13 +72,6 @@ ynh_clean_setup () { # Exit if an error occurs during the execution of the script ynh_abort_if_errors -#================================================= -# CHECK THE PATH -#================================================= - -# Normalize the URL path syntax -path_url=$(ynh_normalize_url_path --path_url=$path_url) - #================================================= # STANDARD UPGRADE STEPS #================================================= From a4608186b2ae59ece8cce397d985f24d47d3579c Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sat, 13 Nov 2021 17:39:41 +0100 Subject: [PATCH 10/16] Please no more escaping quotes ... --- scripts/upgrade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index 6129e57..2b04e05 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -127,7 +127,7 @@ ynh_script_progression --message="Installing Composer..." --weight=15 # Install composer ynh_install_composer -ynh_exec_warn_less ynh_composer_exec --commands=\"dump-autoload\" +ynh_exec_warn_less ynh_composer_exec --commands="dump-autoload" pushd "$final_path" php$phpversion artisan migrate -n --force From 46b350c49e820e98f4f390cda143adc48459284f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 14 Nov 2021 12:36:15 +0100 Subject: [PATCH 11/16] version bump --- check_process | 5 +---- manifest.json | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/check_process b/check_process index 5f43ac5..53f840e 100644 --- a/check_process +++ b/check_process @@ -18,15 +18,12 @@ setup_private=1 setup_public=1 upgrade=1 - upgrade=1 from_commit=f0ce10dd27b78009dd754c4210111aa0eff12ad9 + upgrade=1 from_commit=c0be2e5239ccad4cff25d5bd1584eabd11617220 backup_restore=1 multi_instance=0 incorrect_path=1 port_already_use=0 change_url=0 -;;; Levels - # If the level 5 (Package linter) is forced to 1. Please add justifications here. - Level 5=auto ;;; Options Email=anmol@datamol.org Notification=change diff --git a/manifest.json b/manifest.json index f742d29..becb431 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Manage assets for IT operations", "fr": "Gestionnaire de ressources informatiques" }, - "version": "5.0.4~ynh1", + "version": "5.0.4~ynh2", "url": "https://snipeitapp.com/", "license": "MIT", "maintainer": { From 4adb6ca2526377acc199c8156aa93c1bd955839a Mon Sep 17 00:00:00 2001 From: YunoHost Bot Date: Sun, 14 Nov 2021 12:37:37 +0100 Subject: [PATCH 12/16] [autopatch] Update issue and PR templates (#22) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Testing (#21) * Upgrade to 5.0.4 * [autopatch] Update issue and PR templates Co-authored-by: Éric Gaspar <46165813+ericgaspar@users.noreply.github.com> Co-authored-by: Yunohost-Bot <> Co-authored-by: ericgaspar --- issue_template.md => .github/ISSUE_TEMPLATE.md | 10 +++++----- .github/PULL_REQUEST_TEMPLATE.md | 16 ++++++++++++++++ pull_request_template.md | 18 ------------------ 3 files changed, 21 insertions(+), 23 deletions(-) rename issue_template.md => .github/ISSUE_TEMPLATE.md (89%) create mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 pull_request_template.md diff --git a/issue_template.md b/.github/ISSUE_TEMPLATE.md similarity index 89% rename from issue_template.md rename to .github/ISSUE_TEMPLATE.md index a975880..2729a6b 100644 --- a/issue_template.md +++ b/.github/ISSUE_TEMPLATE.md @@ -6,11 +6,11 @@ about: When creating a bug report, please use the following template to provide **How to post a meaningful bug report** 1. *Read this whole template first.* -2. *Make sure you are on the right place:* +2. *Determine if you are on the right place:* - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - *Otherwise, the issue may be due to the app itself. Refer to its documentation or repository for help.* - - *In doubt, ask here and we will figure it out together.* -3. *Delete these italic comments as you write over them below, and remove this guide.* + - *When in doubt, post here and we will figure it out together.* +3. *Delete the italic comments as you write over them below, and remove this guide.* --- ### Describe the bug @@ -22,7 +22,7 @@ about: When creating a bug report, please use the following template to provide - Hardware: *VPS bought online / Old laptop or computer / Raspberry Pi at home / Internet Cube with VPN / Other ARM board / ...* - YunoHost version: x.x.x - I have access to my server: *Through SSH | through the webadmin | direct access via keyboard / screen | ...* -- Are you in a special context or did you perform some particular tweaking on your YunoHost instance ?: *no / yes* +- Are you in a special context or did you perform some particular tweaking on your YunoHost instance?: *no / yes* - If yes, please explain: - Using, or trying to install package version/branch: - If upgrading, current package version: *can be found in the admin, or with `yunohost app info $app_id`* @@ -31,7 +31,7 @@ about: When creating a bug report, please use the following template to provide - *If you performed a command from the CLI, the command itself is enough. For example:* ```sh - sudo yunohost app install snipeit + sudo yunohost app install the_app ``` - *If you used the webadmin, please perform the equivalent command from the CLI first.* - *If the error occurs in your browser, explain what you did:* diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..ef70e18 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,16 @@ +## Problem + +- *Description of why you made this PR* + +## Solution + +- *And how do you fix that problem* + +## PR Status + +- [ ] Code finished and ready to be reviewed/tested +- [ ] The fix/enhancement were manually tested (if applicable) + +## Automatic tests + +Automatic tests can be triggered on https://ci-apps-dev.yunohost.org/ *after creating the PR*, by commenting "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!". (N.B. : for this to work you need to be a member of the Yunohost-Apps organization) diff --git a/pull_request_template.md b/pull_request_template.md deleted file mode 100644 index 346abfd..0000000 --- a/pull_request_template.md +++ /dev/null @@ -1,18 +0,0 @@ -## Problem -- *Description of why you made this PR* - -## Solution -- *And how do you fix that problem* - -## PR Status -- [ ] Code finished. -- [ ] Tested with Package_check. -- [ ] Fix or enhancement tested. -- [ ] Upgrade from last version tested. -- [ ] Can be reviewed and tested. - -## Package_check results ---- -*If you have access to [App Continuous Integration for packagers](https://yunohost.org/#/packaging_apps_ci) you can provide a link to the package_check results like below, replacing '-NUM-' in this link by the PR number and USERNAME by your username on the ci-apps-dev. Or you provide a screenshot or a pastebin of the results* - -[![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/snipeit_ynh%20PR-NUM-%20(USERNAME)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/snipeit_ynh%20PR-NUM-%20(USERNAME)/) From f8885d4981a8b0d5de9bdc20546e03e1171d9359 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 14 Nov 2021 15:23:14 +0100 Subject: [PATCH 13/16] 5.3.1 (#24) * 5.3.1 --- README.md | 50 ++++++------ README_fr.md | 43 +++++++++++ check_process | 14 +--- conf/.env | 2 +- conf/app.src | 5 +- doc/screenshots/screenshot-license-list.png | Bin 0 -> 509094 bytes manifest.json | 31 +++----- scripts/_common.sh | 80 +------------------- scripts/install | 29 ++----- scripts/restore | 5 +- scripts/upgrade | 69 +++++++---------- 11 files changed, 124 insertions(+), 204 deletions(-) create mode 100644 README_fr.md create mode 100644 doc/screenshots/screenshot-license-list.png diff --git a/README.md b/README.md index 1c8d02f..0d16df9 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,37 @@ + + # Snipe-IT for YunoHost [![Integration level](https://dash.yunohost.org/integration/snipeit.svg)](https://dash.yunohost.org/appci/app/snipeit) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.maintain.svg) -[![Install Snipe-IT with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=snipeit) +[![Install Snipe-IT with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=snipeit) -> *This package allows you to install Snipe-IT quickly and simply on a YunoHost server. +*[Lire ce readme en français.](./README_fr.md)* + +> *This package allows you to install Snipe-IT quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -Snipe-IT is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc. It is built on Laravel 5.4. -**Shipped version:** 5.0.4 +Manage assets for IT operations + +**Shipped version:** 5.3.1~ynh1 + +**Demo:** https://snipeitapp.com/demo/ ## Screenshots -![](https://snipeitapp.com/img/screenshots/screenshot-license-list.png) +![](./doc/screenshots/screenshot-license-list.png) -## Demo +## Documentation and resources -* [Official demo](https://snipeitapp.com/demo/) - -## Configuration - - 1. Require dedicated domain like **asset.domain.tld**. - 1. No LDAP support yet. - 1. This app is multi-instance (you can have more then one instance of this app running on a YunoHost server) - -#### Supported architectures - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/snipeit%20%28Community%29.svg)](https://ci-apps.yunohost.org/ci/apps/snipeit/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/snipeit%20%28Community%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/snipeit/) - -## Links - - * Report a bug: https://github.com/YunoHost-Apps/snipeit_ynh/issues - * App website: https://snipeitapp.com/ - * Upstream app repository: https://github.com/snipe/snipe-it - * YunoHost website: https://yunohost.org/ - ---- +* Official app website: https://snipeitapp.com/ +* Official admin documentation: https://snipe-it.readme.io/docs +* Upstream app code repository: https://github.com/snipe/snipe-it +* YunoHost documentation for this app: https://yunohost.org/app_snipeit +* Report a bug: https://github.com/YunoHost-Apps/snipeit_ynh/issues ## Developer info @@ -49,3 +43,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/snipeit_ynh/tree/test or sudo yunohost app upgrade snipeit -u https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing --debug ``` + +**More info regarding app packaging:** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/README_fr.md b/README_fr.md new file mode 100644 index 0000000..a1a56d4 --- /dev/null +++ b/README_fr.md @@ -0,0 +1,43 @@ +# Snipe-IT pour YunoHost + +[![Niveau d'intégration](https://dash.yunohost.org/integration/snipeit.svg)](https://dash.yunohost.org/appci/app/snipeit) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/snipeit.maintain.svg) +[![Installer Snipe-IT avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=snipeit) + +*[Read this readme in english.](./README.md)* +*[Lire ce readme en français.](./README_fr.md)* + +> *Ce package vous permet d'installer Snipe-IT rapidement et simplement sur un serveur YunoHost. +Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* + +## Vue d'ensemble + +Gestionnaire de ressources informatiques + +**Version incluse :** 5.3.1~ynh1 + +**Démo :** https://snipeitapp.com/demo/ + +## Captures d'écran + +![](./doc/screenshots/screenshot-license-list.png) + +## Documentations et ressources + +* Site officiel de l'app : https://snipeitapp.com/ +* Documentation officielle de l'admin : https://snipe-it.readme.io/docs +* Dépôt de code officiel de l'app : https://github.com/snipe/snipe-it +* Documentation YunoHost pour cette app : https://yunohost.org/app_snipeit +* Signaler un bug : https://github.com/YunoHost-Apps/snipeit_ynh/issues + +## Informations pour les développeurs + +Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing). + +Pour essayer la branche testing, procédez comme suit. +``` +sudo yunohost app install https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing --debug +ou +sudo yunohost app upgrade snipeit -u https://github.com/YunoHost-Apps/snipeit_ynh/tree/testing --debug +``` + +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/check_process b/check_process index 53f840e..1976c32 100644 --- a/check_process +++ b/check_process @@ -1,15 +1,10 @@ -# See here for more information -# https://github.com/YunoHost/package_check#syntax-check_process-file - -# Move this file from check_process.default to check_process when you have filled it. - ;; Test complet ; Manifest - domain="domain.tld" (DOMAIN) - path="/path" (PATH) - admin="john" (USER) + domain="domain.tld" + path="/path" + admin="john" language="fr" - is_public=1 (PUBLIC|public=1|private=0) + is_public=1 ; Checks pkg_linter=1 setup_sub_dir=0 @@ -22,7 +17,6 @@ backup_restore=1 multi_instance=0 incorrect_path=1 - port_already_use=0 change_url=0 ;;; Options Email=anmol@datamol.org diff --git a/conf/.env b/conf/.env index 129bc5d..45fba08 100644 --- a/conf/.env +++ b/conf/.env @@ -15,7 +15,7 @@ DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_DATABASE=__DB_NAME__ DB_USERNAME=__DB_USER__ -DB_PASSWORD=__DB_PASS__ +DB_PASSWORD=__DB_PWD__ DB_PREFIX=null DB_DUMP_PATH='/usr/bin' DB_CHARSET=utf8mb4 diff --git a/conf/app.src b/conf/app.src index ed58018..21d8459 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,6 +1,5 @@ -SOURCE_URL=https://github.com/snipe/snipe-it/archive/v5.0.4.tar.gz -SOURCE_SUM=b06eef8d8f7a3063d93ebfcfe10c1d238c8879d555d0b48e01cc854e9d3d1d44 +SOURCE_URL=https://github.com/snipe/snipe-it/archive/v5.3.1.tar.gz +SOURCE_SUM=0870373e35dbe34574322d49da647a4c5cf8912a153ab520eb065cc4b06787e0 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= diff --git a/doc/screenshots/screenshot-license-list.png b/doc/screenshots/screenshot-license-list.png new file mode 100644 index 0000000000000000000000000000000000000000..5e174f844d356bb12555ac34c714e551722875e1 GIT binary patch literal 509094 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%0Ac7{J2z`TG|*_=gMC4z}q&zlF#R=}2>3z!}id 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