@@ -11,7 +11,7 @@ It shall NOT be edited by hand.
|
|||||||
DNS server for privacy and security
|
DNS server for privacy and security
|
||||||
|
|
||||||
[](https://technitium.com/dns/)
|
[](https://technitium.com/dns/)
|
||||||
[?style=for-the-badge)](https://ci-apps.yunohost.org/ci/apps/technitium-dns/)
|
[?style=for-the-badge)](https://ci-apps.yunohost.org/ci/apps/technitium-dns/)
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<a href="https://apps.yunohost.org/app/technitium-dns"><img height="100px" src="https://github.com/YunoHost/yunohost-artwork/raw/refs/heads/main/badges/neopossum-badges/badge_more_info_on_the_appstore.svg"/></a>
|
<a href="https://apps.yunohost.org/app/technitium-dns"><img height="100px" src="https://github.com/YunoHost/yunohost-artwork/raw/refs/heads/main/badges/neopossum-badges/badge_more_info_on_the_appstore.svg"/></a>
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
listen-address=127.0.0.1
|
||||||
|
bind-interfaces
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
5 0 * * * ln -sf $(ls -t /var/log/__APP__/dns/*.log | head -n 1) /var/log/__APP__/__APP__.log
|
||||||
@@ -9,10 +9,12 @@ Group=__APP__
|
|||||||
WorkingDirectory=__INSTALL_DIR__/sources/
|
WorkingDirectory=__INSTALL_DIR__/sources/
|
||||||
ExecStart=__INSTALL_DIR__/dotnet/dotnet __INSTALL_DIR__/sources/DnsServerApp.dll __DATA_DIR__
|
ExecStart=__INSTALL_DIR__/dotnet/dotnet __INSTALL_DIR__/sources/DnsServerApp.dll __DATA_DIR__
|
||||||
Restart=always
|
Restart=always
|
||||||
# Restart service after 10 seconds if the dotnet service crashes:
|
|
||||||
RestartSec=10
|
RestartSec=10
|
||||||
KillSignal=SIGINT
|
KillSignal=SIGINT
|
||||||
SyslogIdentifier=dns-server
|
SyslogIdentifier=dns-server
|
||||||
|
Environment=DNS_SERVER_LOG_FOLDER_PATH=/var/log/__APP__/dns
|
||||||
|
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
|
||||||
|
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
After upgrading, in `Settings` > `General` you must set `DNS Server Local End Points` to your ynh server's IP address(es) and then scroll to the bottom and `Save Settings` to restart the DNS server.
|
||||||
|
|
||||||
|
eg:
|
||||||
|
```
|
||||||
|
192.168.0.88:53
|
||||||
|
[2981:2cb2:8e86:91f6:4dab:cc4b:2fba:463b]:53
|
||||||
|
```
|
||||||
|
|
||||||
|
If your server does not have an IPv6 address, you only need to enter the IPv4 address.
|
||||||
+16
-9
@@ -7,7 +7,7 @@ name = "Technitium DNS"
|
|||||||
description.en = "DNS server for privacy and security"
|
description.en = "DNS server for privacy and security"
|
||||||
description.fr = "Serveur DNS pour la confidentialité et la sécurité"
|
description.fr = "Serveur DNS pour la confidentialité et la sécurité"
|
||||||
|
|
||||||
version = "14.3.0~ynh1"
|
version = "15.2.0~ynh1"
|
||||||
|
|
||||||
maintainers = ["Navan Chauhan"]
|
maintainers = ["Navan Chauhan"]
|
||||||
|
|
||||||
@@ -44,21 +44,28 @@ ram.runtime = "50M"
|
|||||||
|
|
||||||
[resources]
|
[resources]
|
||||||
[resources.sources.main]
|
[resources.sources.main]
|
||||||
url = "https://download.technitium.com/dns/archive/14.3.0/DnsServerPortable.tar.gz"
|
url = "https://github.com/TechnitiumSoftware/DnsServer/archive/refs/tags/v15.2.0.tar.gz"
|
||||||
sha256 = "9b2deaa54378e5abef1917907876ef2d0c89e0b6d09fc494e6a799b6316adea7"
|
sha256 = "9247b3c70a8f58d336741819b4550b29937815dc535d1cc0f36ffd7cedb8860c"
|
||||||
in_subdir = false
|
in_subdir = false
|
||||||
# Careful, this autoupdate does not put the right asset, it only serves as a notification!
|
# Careful, this autoupdate does not put the right asset, it only serves as a notification!
|
||||||
autoupdate.strategy = "latest_github_tag"
|
autoupdate.strategy = "latest_github_tag"
|
||||||
autoupdate.asset = "tarball"
|
autoupdate.asset = "tarball"
|
||||||
autoupdate.needs_manual_tweaks = true
|
autoupdate.needs_manual_tweaks = true
|
||||||
|
prefetch = false
|
||||||
|
|
||||||
|
[resources.sources.prebuilt]
|
||||||
|
url = "https://download.technitium.com/dns/archive/15.2.0/DnsServerPortable.tar.gz"
|
||||||
|
sha256 = "2e39fb8d0718475790cc025e083a1bcfd837a5e79e4a1d0ed775881bd90287ef"
|
||||||
|
in_subdir = false
|
||||||
|
|
||||||
[resources.sources.dotnet]
|
[resources.sources.dotnet]
|
||||||
amd64.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/9.0.11/aspnetcore-runtime-9.0.11-linux-x64.tar.gz"
|
amd64.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.7/aspnetcore-runtime-10.0.7-linux-x64.tar.gz"
|
||||||
amd64.sha256 = "9c72253df8cbdbc775c76d6dcefc057aabb0bf7c978e5c3f24ab0afed839fd1f"
|
amd64.sha256 = "e7371614247bbc481196434d3cc2095e187b569c1929ab5c1af056682f1ca512"
|
||||||
arm64.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/9.0.11/aspnetcore-runtime-9.0.11-linux-arm64.tar.gz"
|
arm64.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.7/aspnetcore-runtime-10.0.7-linux-arm64.tar.gz"
|
||||||
arm64.sha256 = "d039cbb3ef822aad0226857c1d89763c9c2a4bf339015bb11c99a7f6e62d3062"
|
arm64.sha256 = "5c95e878081d8b0476f36ff141a965573cecbc37f2e0555d2374b49d67572b00"
|
||||||
armhf.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/9.0.11/aspnetcore-runtime-9.0.11-linux-arm.tar.gz"
|
armhf.url = "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.7/aspnetcore-runtime-10.0.7-linux-arm.tar.gz"
|
||||||
armhf.sha256 = "6ef6521e262d05302f3e52026d59b8464ae881fc983671c20e3a9e4034d7a99c"
|
armhf.sha256 = "79c4f9fbc5d028c939acb8bdc3899d1e788e2bad032d9a09f22eb21c9a9b8d16"
|
||||||
|
in_subdir = false
|
||||||
|
|
||||||
[resources.system_user]
|
[resources.system_user]
|
||||||
|
|
||||||
|
|||||||
+1
-7
@@ -11,30 +11,24 @@ ynh_print_info "Declaring files to be backed up..."
|
|||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP THE APP MAIN DIR
|
# BACKUP THE APP MAIN DIR
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_backup "$install_dir"
|
ynh_backup "$install_dir"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP THE DATA DIR
|
# BACKUP THE DATA DIR
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_backup "$data_dir"
|
ynh_backup "$data_dir"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SYSTEM CONFIGURATION
|
# SYSTEM CONFIGURATION
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
|
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
|
||||||
|
|
||||||
ynh_backup "/etc/logrotate.d/$app"
|
|
||||||
|
|
||||||
ynh_backup "/etc/systemd/system/$app.service"
|
ynh_backup "/etc/systemd/system/$app.service"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP VARIOUS FILES
|
# BACKUP VARIOUS FILES
|
||||||
#=================================================
|
#=================================================
|
||||||
|
ynh_backup "/var/log/$app"
|
||||||
ynh_backup "/var/log/$app/"
|
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# END OF SCRIPT
|
# END OF SCRIPT
|
||||||
|
|||||||
+2
-2
@@ -11,7 +11,7 @@ source /usr/share/yunohost/helpers
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Stopping $app's systemd service..."
|
ynh_script_progression "Stopping $app's systemd service..."
|
||||||
|
|
||||||
ynh_systemctl --service="$app" --action="stop"
|
ynh_systemctl --service="$app" --action="stop" --log_path=systemd --wait_until="was stopped successfully"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# MODIFY URL IN NGINX CONF
|
# MODIFY URL IN NGINX CONF
|
||||||
@@ -25,7 +25,7 @@ ynh_config_change_url_nginx
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Starting $app's systemd service..."
|
ynh_script_progression "Starting $app's systemd service..."
|
||||||
|
|
||||||
ynh_systemctl --service="$app" --action="start"
|
ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# END OF SCRIPT
|
# END OF SCRIPT
|
||||||
|
|||||||
+49
-8
@@ -11,8 +11,7 @@ source /usr/share/yunohost/helpers
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Setting up source files..."
|
ynh_script_progression "Setting up source files..."
|
||||||
|
|
||||||
# Download, check integrity, uncompress and patch the source from app.src
|
ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources"
|
||||||
ynh_setup_source --dest_dir="$install_dir/sources"
|
|
||||||
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet"
|
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
@@ -20,23 +19,65 @@ ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet"
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Adding system configurations related to $app..."
|
ynh_script_progression "Adding system configurations related to $app..."
|
||||||
|
|
||||||
# Create a dedicated NGINX config
|
|
||||||
ynh_config_add_nginx
|
ynh_config_add_nginx
|
||||||
|
|
||||||
# Create a dedicated systemd config
|
|
||||||
ynh_config_add_systemd
|
ynh_config_add_systemd
|
||||||
|
|
||||||
|
mkdir -p "/var/log/$app/dns"
|
||||||
|
chown -R "$app:$app" "/var/log/$app"
|
||||||
|
|
||||||
|
ynh_hide_warnings yunohost firewall allow Both 53
|
||||||
|
|
||||||
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports="53"
|
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports="53"
|
||||||
|
|
||||||
# Use logrotate to manage application logfile(s)
|
ynh_config_add --template="dnsmasq.conf" --destination="/etc/dnsmasq.d/$app.conf"
|
||||||
ynh_config_add_logrotate
|
|
||||||
|
ynh_systemctl --service="dnsmasq" --action="restart"
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
# ADD A CRON JOB
|
||||||
|
#=================================================
|
||||||
|
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
|
||||||
|
chmod 644 "/etc/cron.d/$app"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# START SYSTEMD SERVICE
|
# START SYSTEMD SERVICE
|
||||||
#=================================================
|
#=================================================
|
||||||
|
ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
# LINK LOGS
|
||||||
|
#=================================================
|
||||||
|
ln -sf $(ls -t /var/log/$app/dns/*.log | head -n 1) /var/log/$app/$app.log
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
# SET LOCAL ENDPOINT IP(S)
|
||||||
|
#=================================================
|
||||||
|
gateway_v4=$(ip -4 route show default | awk '{print $3}' | head -n1)
|
||||||
|
ipv4=$(ip -4 route get "$gateway_v4" 2>/dev/null | grep -oP 'src \K\S+')
|
||||||
|
|
||||||
|
gateway_v6=$(ip -6 route show default | awk '{print $3}' | head -n1)
|
||||||
|
if [ -n "$gateway_v6" ]; then
|
||||||
|
ipv6=$(ip -6 route get "$gateway_v6" 2>/dev/null | grep -oP 'src \K\S+' | grep -v '^fe80' || true)
|
||||||
|
else
|
||||||
|
ipv6=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$ipv6" ]; then
|
||||||
|
endpoints="$ipv4:53,[$ipv6]:53"
|
||||||
|
else
|
||||||
|
endpoints="$ipv4:53"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mytoken1=$(curl -s "http://127.0.0.1:5380/api/user/createToken?user=admin&pass=admin&tokenName=mytoken1" | jq -r '.token')
|
||||||
|
curl -s "http://localhost:5380/api/settings/set?dnsServerLocalEndPoints=$endpoints&Token=$mytoken1"
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
# RESTART SYSTEMD SERVICE
|
||||||
|
#=================================================
|
||||||
ynh_script_progression "Starting $app's systemd service..."
|
ynh_script_progression "Starting $app's systemd service..."
|
||||||
|
|
||||||
# Start a systemd service
|
ynh_systemctl --service="$app" --action="restart" --log_path=systemd --wait_until="was started successfully"
|
||||||
ynh_systemctl --service="$app" --action="start"
|
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# END OF SCRIPT
|
# END OF SCRIPT
|
||||||
|
|||||||
+5
-6
@@ -16,16 +16,15 @@ if ynh_hide_warnings yunohost service status "$app" >/dev/null; then
|
|||||||
yunohost service remove "$app"
|
yunohost service remove "$app"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Remove the dedicated systemd config
|
ynh_hide_warnings yunohost firewall disallow Both 53
|
||||||
|
|
||||||
ynh_config_remove_systemd
|
ynh_config_remove_systemd
|
||||||
|
|
||||||
# Remove the app-specific logrotate config
|
|
||||||
ynh_config_remove_logrotate
|
|
||||||
|
|
||||||
# Remove the dedicated NGINX config
|
|
||||||
ynh_config_remove_nginx
|
ynh_config_remove_nginx
|
||||||
|
|
||||||
# Remove the log files
|
ynh_safe_rm "/etc/cron.d/$app"
|
||||||
|
|
||||||
|
ynh_safe_rm "/etc/dnsmasq.d/$app.conf"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# END OF SCRIPT
|
# END OF SCRIPT
|
||||||
|
|||||||
+15
-2
@@ -27,18 +27,31 @@ ynh_script_progression "Restoring system configurations related to $app..."
|
|||||||
|
|
||||||
ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf"
|
ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf"
|
||||||
|
|
||||||
|
ynh_restore "/var/log/$app"
|
||||||
|
|
||||||
|
ynh_hide_warnings yunohost firewall allow Both 53
|
||||||
|
|
||||||
ynh_restore "/etc/systemd/system/$app.service"
|
ynh_restore "/etc/systemd/system/$app.service"
|
||||||
systemctl enable "$app.service" --quiet
|
systemctl enable "$app.service" --quiet
|
||||||
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
|
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
|
||||||
|
|
||||||
ynh_restore "/etc/logrotate.d/$app"
|
ynh_config_add --template="dnsmasq.conf" --destination="/etc/dnsmasq.d/$app.conf"
|
||||||
|
|
||||||
|
ynh_systemctl --service="dnsmasq" --action="restart"
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
# ADD A CRON JOB
|
||||||
|
#=================================================
|
||||||
|
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
|
||||||
|
chown root: "/etc/cron.d/$app"
|
||||||
|
chmod 644 "/etc/cron.d/$app"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# START SYSTEMD SERVICE
|
# START SYSTEMD SERVICE
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Starting $app's systemd service..."
|
ynh_script_progression "Starting $app's systemd service..."
|
||||||
|
|
||||||
ynh_systemctl --service="$app" --action="start"
|
ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# RELOAD NGINX
|
# RELOAD NGINX
|
||||||
|
|||||||
+19
-8
@@ -11,7 +11,7 @@ source /usr/share/yunohost/helpers
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Stopping $app's systemd service..."
|
ynh_script_progression "Stopping $app's systemd service..."
|
||||||
|
|
||||||
ynh_systemctl --service=$app --action="stop"
|
ynh_systemctl --service="$app" --action="stop" --log_path=systemd --wait_until="was stopped successfully"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# ENSURE DOWNWARD COMPATIBILITY
|
# ENSURE DOWNWARD COMPATIBILITY
|
||||||
@@ -24,13 +24,23 @@ if [ ! -d "$install_dir/dotnet" ]; then
|
|||||||
ynh_safe_rm "/usr/bin/dotnet"
|
ynh_safe_rm "/usr/bin/dotnet"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if ynh_app_upgrading_from_version_before_or_equal_to 14.3.0~ynh1; then
|
||||||
|
mkdir -p "/var/log/$app"
|
||||||
|
mv "$data_dir/logs" "/var/log/$app/dns"
|
||||||
|
chown -R "$app:$app" "/var/log/$app"
|
||||||
|
ln -sf "/var/log/$app/dns" "$data_dir/logs"
|
||||||
|
ln -sf $(ls -t /var/log/$app/dns/*.log | head -n 1) /var/log/$app/$app.log
|
||||||
|
ynh_config_add --template="dnsmasq.conf" --destination="/etc/dnsmasq.d/$app.conf"
|
||||||
|
ynh_systemctl --service="dnsmasq" --action="restart"
|
||||||
|
ynh_hide_warnings yunohost firewall allow Both 53
|
||||||
|
fi
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# DOWNLOAD, CHECK AND UNPACK SOURCE
|
# DOWNLOAD, CHECK AND UNPACK SOURCE
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Upgrading source files..."
|
ynh_script_progression "Upgrading source files..."
|
||||||
|
|
||||||
# Download, check integrity, uncompress and patch the source from app.src
|
ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources" --full_replace
|
||||||
ynh_setup_source --dest_dir="$install_dir/sources" --full_replace
|
|
||||||
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_replace
|
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_replace
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
@@ -38,22 +48,23 @@ ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_re
|
|||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Upgrading system configurations related to $app..."
|
ynh_script_progression "Upgrading system configurations related to $app..."
|
||||||
|
|
||||||
# Create a dedicated NGINX config
|
|
||||||
ynh_config_add_nginx
|
ynh_config_add_nginx
|
||||||
|
|
||||||
# Create a dedicated systemd config
|
|
||||||
ynh_config_add_systemd
|
ynh_config_add_systemd
|
||||||
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
|
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
|
||||||
|
|
||||||
# Use logrotate to manage app-specific logfile(s)
|
#=================================================
|
||||||
ynh_config_add_logrotate
|
# ADD A CRON JOB
|
||||||
|
#=================================================
|
||||||
|
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
|
||||||
|
chmod 644 "/etc/cron.d/$app"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# START SYSTEMD SERVICE
|
# START SYSTEMD SERVICE
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression "Starting $app's systemd service..."
|
ynh_script_progression "Starting $app's systemd service..."
|
||||||
|
|
||||||
ynh_systemctl --service="$app" --action="start"
|
ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# END OF SCRIPT
|
# END OF SCRIPT
|
||||||
|
|||||||
+2
-1
@@ -16,4 +16,5 @@ test_format = 1.0
|
|||||||
# Commits to test upgrade from
|
# Commits to test upgrade from
|
||||||
# -------------------------------
|
# -------------------------------
|
||||||
|
|
||||||
test_upgrade_from.f20d6449b36f1a891c5c7ab058691c836aa18833.name = "Upgrade from 13.4.1~ynh1"
|
#test_upgrade_from.f20d6449b36f1a891c5c7ab058691c836aa18833.name = "Upgrade from 13.4.1~ynh1"
|
||||||
|
test_upgrade_from.8567147.name = "Upgrade from 14.3.0~ynh1"
|
||||||
Reference in New Issue
Block a user