Migrate to manifestv2 and other changes:

* Move app install dir from /opt to /var/www
* Revamp the way binaries are downloaded thanks to manifestv2 (no need to check for arch, etc)
* Remove custom helpers (exec_as, ynh_handle_app_migration)
* Rename LFS_KEY as LFS_JWT_SECRET and KEY as SECRET_KEY as named in app.ini
* Add JWT_SECRET for oauth and INTERNAL_TOKEN in app.ini
* update upstream sample app.ini URL
* Disable actions for now.
* Automatically add ssh permissions to the system user
* Remove support for upgrade before 1.6.4. Edit test_upgrade_from accordingly.
This commit is contained in:
Félix Piédallu
2023-09-09 11:17:52 +02:00
committed by Félix Piédallu
parent b51febc0f9
commit 60cb5e5ae4
128 changed files with 474 additions and 1648 deletions

View File

@ -1,8 +1,14 @@
## Additional informations
## Git access
### Notes on SSH usage
### Via HTTPS
If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys. Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
If you want to use git repositories with `https` remotes, you need to set this app as **public**.
### Via SSH
If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys.
Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
```bash
PubkeyAuthentication yes
@ -17,61 +23,71 @@ You must also add your public key to your Gitea profile.
When using SSH on any port other than 22, you need to add these lines to your SSH configuration `~/.ssh/config`:
```bash
Host domain.tld
Host __DOMAIN__
port 2222 # change this with the port you use
```
### Upgrade
## LFS setup
By default, a backup is performed before upgrading. To avoid this, you have the following options:
- Pass the `NO_BACKUP_UPGRADE` env variable with `1` at each upgrade. For example `NO_BACKUP_UPGRADE=1 yunohost app upgrade gitea`.
- Set `disable_backup_before_upgrade` to `1`. You can set it with this command:
`yunohost app setting gitea disable_backup_before_upgrade -v 1`
After that, the settings will be applied for **all** the next updates.
From command line:
`yunohost app upgrade gitea`
### Backup
This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
- Stop Gitea service with this command:
`systemctl stop gitea.service`
- Launch Gitea backup with this command:
`yunohost backup create --app gitea`
- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/gitea`.
- Restart Gitea service with theses command:
`systemctl start gitea.service`
### Remove
Due of the backup core only feature the data directory in `/home/yunohost.app/gitea` **is not removed**. It must be manually deleted to purge user data from the app.
### LFS setup
To use a repository with an `LFS` setup, you need to activate it on `/opt/gitea/custom/conf/app.ini`
To use a repository with an `LFS` setup, you need to activate it on `__INSTALL_DIR__/custom/conf/app.ini`
```ini
[server]
LFS_START_SERVER = true
LFS_HTTP_AUTH_EXPIRY = 20m
```
By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/my.domain.tld.d/gitea.conf`.
```
By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/__DOMAIN__.d/__APP__.conf`.
```nginx
client_max_body_size 200M;
```
Don't forget to restart Gitea `sudo systemctl restart gitea.service`.
Don't forget to restart Gitea:
```bash
sudo systemctl restart __APP__.service`.
```
> These settings are restored to the default configuration when updating Gitea. Remember to restore your configuration after all updates.
### Git command access with HTTPS
## Upgrade
If you want to use the Git command (like `git clone`, `git pull`, `git push`), you need to set this app as **public**.
From command line:
```bash
yunohost app upgrade __APP__
```
If you want to bypass the safety backup before upgrading, run:
```bash
yunohost app upgrade --no-safety-backup __APP__
```
## Backup
This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
- Stop Gitea service:
```bash
systemctl stop __APP__.service
```
- Launch Gitea backup:
```bash
yunohost backup create --app __APP__
```
- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/__APP__`.
- Restart Gitea service:
```bash
systemctl stop __APP__.service
```
## Remove
Due of the backup core only feature the data directory in `/home/yunohost.app/__APP__` **is not removed**. It must be manually deleted to purge user data from the app.