From 5fe07869797fbf9647d73052ace9cce35908090a Mon Sep 17 00:00:00 2001
From: Peter Nerlich <peter.nerlich+dev@googlemail.com>
Date: Sat, 29 May 2021 20:31:31 +0200
Subject: [PATCH] update to minetest 5.4.1

---
 kif_minetest_mapserver/README.md              |   4 +-
 kif_minetest_mapserver/defaults/main.yml      |   2 +-
 kif_minetest_server/README.md                 |   4 +-
 kif_minetest_server/defaults/main.yml         |  16 +-
 kif_minetest_server/templates/map_meta.txt.j2 |   2 +-
 testing.yml                                   | 262 ++++++++++++++++++
 6 files changed, 280 insertions(+), 10 deletions(-)

diff --git a/kif_minetest_mapserver/README.md b/kif_minetest_mapserver/README.md
index dccf046..7be2785 100644
--- a/kif_minetest_mapserver/README.md
+++ b/kif_minetest_mapserver/README.md
@@ -25,8 +25,8 @@ Variables for the `kif_minetest_server` role:
 * `mapserver_url`: string, default: `http://127.0.0.1:{{ mapserver_port }}`. URL over which the mapserver companion mod to should exchange in-game data with the mapserver.
 * `mapserver_key`: string, default: `CHANGE_TO_PROPER_PASSWORD`. Secret for exchanging in-game data from the companion mod with the mapserver. Please, please always have this be something different than the default.
 * `use_production_secrets`: bool, default: `false`. Whether to use secrets for production from the vault file. Requires you to know and supply the password.
-* `minetest_version`: string, default: `5.3.0`. Which minetest version to use. Refers to the commit, tag or branch of the official git repository where minetest is compiled from.
-* `minetest_game_version`: string, default: `5.3.0`. Which minetest game version to use. Refers to the commit, tag or branch of the official git repository.
+* `minetest_version`: string, default: `5.4.1`. Which minetest version to use. Refers to the commit, tag or branch of the official git repository where minetest is compiled from.
+* `minetest_game_version`: string, default: `5.4.1`. Which minetest game version to use. Refers to the commit, tag or branch of the official git repository.
 * `mods_version`: string, default: `master`. Refers to the commit, tag or branch of the repository holding the mods.
 * `mods_git_repo`: string, default: `'https://gitlab.fachschaften.org/minetest/minetest_mods.git'`. URL of the repository holding the mods that should be used.
 * `update_mods_cron_job`: bool, default: `true`. Whether to create a cron job to update mods automatically each day. Refers cron to `update.sh` which must be present at the root of the mods repository.
diff --git a/kif_minetest_mapserver/defaults/main.yml b/kif_minetest_mapserver/defaults/main.yml
index b9e2230..c0762ca 100644
--- a/kif_minetest_mapserver/defaults/main.yml
+++ b/kif_minetest_mapserver/defaults/main.yml
@@ -1,7 +1,7 @@
 ---
 use_production_secrets: false
 
-mapserver_key: CHANGE_TO_PROPER_PASSWORD
+mapserver_key: CHANGE_TO_PROPER_MAPSERVER_KEY
 
 mapserver_version: 4.2
 
diff --git a/kif_minetest_server/README.md b/kif_minetest_server/README.md
index 3d819a1..ae1657d 100644
--- a/kif_minetest_server/README.md
+++ b/kif_minetest_server/README.md
@@ -16,8 +16,8 @@ TODO: complete documentation
 Most important variables:
 
 * `use_production_secrets`: bool, default: `false`. Whether to use secrets for production from the vault file. Requires you to know and supply the password.
-* `minetest_version`: string, default: `5.3.0`. Which minetest version to use. Refers to the commit, tag or branch of the official git repository where minetest is compiled from.
-* `minetest_game_version`: string, default: `5.3.0`. Which minetest game version to use. Refers to the commit, tag or branch of the official git repository.
+* `minetest_version`: string, default: `5.4.1`. Which minetest version to use. Refers to the commit, tag or branch of the official git repository where minetest is compiled from.
+* `minetest_game_version`: string, default: `5.4.1`. Which minetest game version to use. Refers to the commit, tag or branch of the official git repository.
 * `mods_version`: string, default: `master`. Refers to the commit, tag or branch of the repository holding the mods.
 * `mods_git_repo`: string, default: `'https://gitlab.fachschaften.org/minetest/minetest_mods.git'`. URL of the repository holding the mods that should be used.
 * `update_mods_cron_job`: bool, default: `true`. Whether to create a cron job to update mods automatically each day. Refers cron to `update.sh` which must be present at the root of the mods repository.
diff --git a/kif_minetest_server/defaults/main.yml b/kif_minetest_server/defaults/main.yml
index da0dddd..9a48c53 100644
--- a/kif_minetest_server/defaults/main.yml
+++ b/kif_minetest_server/defaults/main.yml
@@ -1,8 +1,8 @@
 ---
 use_production_secrets: false
 
-minetest_version: 5.3.0
-minetest_game_version: 5.3.0
+minetest_version: 5.4.1
+minetest_game_version: 5.4.1
 mods_version: master
 
 minetest_base_dir: /var/lib/minetest
@@ -26,7 +26,7 @@ server_language: de
 server_name: KIF Minetest Server
 server_description: Minetest-Server für die Konferenz der Informatikfachschaften
 server_motd: KIF Minetest Server
-server_kick_msg_shutdown: WIR SCHLIESSEN! Der Server ist für den Dauerbetrieb gedacht, also ist es vermutlich ein Neustart. Im Normalfall, wenn keine größeren Wartungsarbeiten stattfinden oder ein Admin was kaputt gemacht hat, dürfte er in genauuu...... DIESEM Moment wieder laufen. Ansonsten versuch es in den nächsen Minuten doch nochmal!
+server_kick_msg_shutdown: WIR SCHLIESSEN! Der Server ist für den Dauerbetrieb gedacht, also ist es vermutlich ein Neustart. Im Normalfall, wenn keine größeren Wartungsarbeiten stattfinden oder ein Admin was kaputt gemacht hat, dürfte er in genauuu....... DIESEM Moment wieder laufen. Ansonsten versuch es in den nächsen Minuten doch nochmal!
 server_kick_msg_crash: Ups! Das war wohl nichts. Uns ist tatsächlich der Server abgeschmiert. Bitte melde das den Admins, falls die nicht schon dran tüfteln...
 
 minetest_seed: 3374822340961073250
@@ -73,6 +73,7 @@ server_active_object_send_range_blocks: 7
 server_active_block_range: 6
 server_secure_http_mods:
   - mapserver
+  - ak_announcer
 
 mapserver_enable_crafting: true
 mapserver_url: http://127.0.0.1:{{ mapserver_port }}
@@ -89,9 +90,9 @@ load_mods:
   - 3d_armor_stand
   - 3d_armor_ui
   - advtrains
+  - advtrains_assets
   - advtrains_freight_train
   - advtrains_interlocking
-  - advtrains_itrainmap
   - advtrains_line_automation
   - advtrains_luaautomation
   - advtrains_railbus
@@ -103,6 +104,7 @@ load_mods:
   - advtrains_train_steam
   - advtrains_train_subway
   - advtrains_train_track
+  - ak_announcer
   - ambience
   - areas
   - assets
@@ -118,6 +120,7 @@ load_mods:
   - character_creator
   - coloredwood
   - computer
+  - computers
   - death_markers
   - digilines
   - digiterms
@@ -131,6 +134,9 @@ load_mods:
   - food_basic
   - hbarmor
   - hbhunger
+  - home_workshop_common
+  - home_workshop_machines
+  - home_workshop_misc
   - homedecor_3d_extras
   - homedecor_bathroom
   - homedecor_bedroom
@@ -236,6 +242,7 @@ load_mods:
   - pipeworks
   - plasmascreen
   - protector
+  - serialize_lib
   - shields
   - signs
   - signs_api
@@ -258,5 +265,6 @@ load_mods:
   - wield3d
   - wieldview
 disabled_mods:
+  - advtrains_itrainmap
   - skinsdb
   - snowdrift
diff --git a/kif_minetest_server/templates/map_meta.txt.j2 b/kif_minetest_server/templates/map_meta.txt.j2
index 49ff1a4..d307cc7 100644
--- a/kif_minetest_server/templates/map_meta.txt.j2
+++ b/kif_minetest_server/templates/map_meta.txt.j2
@@ -71,7 +71,7 @@ mgvalleys_np_inter_valley_fill = {
 	octaves = 6
 	offset = 0
 }
-mg_flags = caves, dungeons, light, decorations, biomes
+mg_flags = caves, dungeons, light, decorations, biomes, ores
 mg_name = valleys
 mgvalleys_river_depth = 4
 mgvalleys_np_valley_depth = {
diff --git a/testing.yml b/testing.yml
index cd27340..d957237 100644
--- a/testing.yml
+++ b/testing.yml
@@ -3,6 +3,268 @@
   roles:
     - role: kif_minetest_mapserver
       vars:
+        mods_version: testing
         server_player_backend: sqlite3
         server_backend: sqlite3
         server_announce: false
+        load_mods:
+          - 3d_armor
+          - 3d_armor_ip
+          - 3d_armor_sfinv
+          - 3d_armor_stand
+          - 3d_armor_ui
+          - advtrains
+          - advtrains_assets
+          - advtrains_freight_train
+          - advtrains_interlocking
+          - advtrains_line_automation
+          - advtrains_luaautomation
+          - advtrains_railbus
+          - advtrains_signals_ks
+          - advtrains_train_industrial
+          - advtrains_train_japan
+          - advtrains_train_jre231
+          - advtrains_train_rocket
+          - advtrains_train_steam
+          - advtrains_train_subway
+          - advtrains_train_track
+          - ak_announcer
+          - ambience
+          - areas
+          - assets
+          - bakedclay
+          - basic_materials
+          - basic_signs
+          - beacons
+          - bike
+          - biome_lib
+          - boards
+          - bonemeal
+          - building_blocks
+          - character_creator
+          - coloredwood
+          - computer
+          - computers
+          - death_markers
+          - digilines
+          - digiterms
+          - display_api
+          - elevators
+          - fake_fire
+          - farming
+          - font_api
+          - font_metro
+          - food
+          - food_basic
+          - hbarmor
+          - hbhunger
+          - home_workshop_common
+          - home_workshop_machines
+          - home_workshop_misc
+          - homedecor_3d_extras
+          - homedecor_bathroom
+          - homedecor_bedroom
+          - homedecor_books
+          - homedecor_climate_control
+          - homedecor_clocks
+          - homedecor_cobweb
+          - homedecor_common
+          - homedecor_doors_and_gates
+          - homedecor_electrical
+          - homedecor_electronics
+          - homedecor_exterior
+          - homedecor_fences
+          - homedecor_foyer
+          - homedecor_furniture
+          - homedecor_furniture_medieval
+          - homedecor_gastronomy
+          - homedecor_kitchen
+          - homedecor_laundry
+          - homedecor_lighting
+          - homedecor_misc
+          - homedecor_office
+          - homedecor_pictures_and_paintings
+          - homedecor_roofing
+          - homedecor_seating
+          - homedecor_tables
+          - homedecor_trash_cans
+          - homedecor_wardrobe
+          - homedecor_windows_and_treatments
+          - hudbars
+          - ilights
+          - illumination
+          - inbox
+          - itemframes
+          - kif_custom
+          - kiffood
+          - lavalamp
+          - led_marquee
+          - mapserver
+          - mesecar
+          - mesecons
+          - mesecons_alias
+          - mesecons_blinkyplant
+          - mesecons_button
+          - mesecons_commandblock
+          - mesecons_delayer
+          - mesecons_detector
+          - mesecons_doors
+          - mesecons_extrawires
+          - mesecons_fpga
+          - mesecons_gates
+          - mesecons_hydroturbine
+          - mesecons_insulated
+          - mesecons_lamp
+          - mesecons_lightstone
+          - mesecons_luacontroller
+          - mesecons_materials
+          - mesecons_microcontroller
+          - mesecons_movestones
+          - mesecons_mvps
+          - mesecons_noteblock
+          - mesecons_pistons
+          - mesecons_powerplant
+          - mesecons_pressureplates
+          - mesecons_random
+          - mesecons_receiver
+          - mesecons_solarpanel
+          - mesecons_stickyblocks
+          - mesecons_switch
+          - mesecons_torch
+          - mesecons_walllever
+          - mesecons_wires
+          - mobkit
+          - mokapi
+          - moreblocks
+          - morelights
+          - morelights_extras
+          - morelights_modern
+          - morelights_vintage
+          - moreores
+          - moretrains_basic
+          - moretrains_industrial
+          - moretrains_japan
+          - moretrains_steam
+          - moretrains_vintage
+          - moretrees
+          - my_castle_doors
+          - my_cottage_doors
+          - my_default_doors
+          - my_door_wood
+          - my_fancy_doors
+          - my_future_doors
+          - my_garage_door
+          - my_hidden_doors
+          - my_misc_doors
+          - my_old_doors
+          - my_saloon_doors
+          - my_sliding_doors
+          - ontime_clocks
+          - orienteering
+          - petz
+          - pie
+          - pipeworks
+          - plasmascreen
+          - protector
+          - serialize_lib
+          - shields
+          - signs
+          - signs_api
+          - signs_lib
+          - signs_road
+          - stained_glass
+          - steles
+          - street_signs
+          - streetlights_api
+          - streetlights_lamps
+          - streetlights_poles
+          - streets
+          - tfl_s7stock
+          - travelnet
+          - ts_workshop
+          - unified_inventory
+          - unifiedbricks
+          - unifieddyes
+          - waffles
+          - wield3d
+          - wieldview
+        disabled_mods:
+          - advtrains_itrainmap
+          - skinsdb
+          - snowdrift
+
+  tasks:
+    - name: Stop minetest
+      systemd:
+        name: "{{ item }}"
+        state: stopped
+      become: true
+      with_items:
+        - minetest
+        - mapserver
+
+    - name: Copy local world
+      ansible.builtin.copy:
+        src: "/home/peter/.minetest/worlds/kifserver/{{ item }}"
+        dest: "/var/lib/minetest/world/{{ item }}"
+        mode: u=rw,g=r,o=r
+        owner: minetest
+        group: minetest
+      become: true
+      with_items:
+        - advtrains_atc
+        - advtrains_interlocking_influence_points
+        - advtrains_interlocking_npr_rails
+        - advtrains_interlocking_rs_callbacks
+        - advtrains_interlocking_rs_locks
+        - advtrains_interlocking_signalass
+        - advtrains_interlocking_tcbs
+        - advtrains_interlocking_ts
+        - advtrains_lines
+        - advtrains_luaautomation
+        - advtrains_ndb
+        - advtrains_ndb2
+        - advtrains_ptmap
+        - advtrains_trains
+        - advtrains_version
+        - advtrains_wagon_save
+        - areas.dat
+#        - auth.sqlite
+        - beds_spawns
+        - death_markers.json
+        - env_meta.txt
+        - force_loaded.txt
+        - homes
+        - ipban.txt
+        - luaentities
+        - map.sqlite
+        - map_meta.txt
+#        - mapserver.json
+        - mapserver.sqlite
+        - mesecon_actionqueue
+        - mod_travelnet.data
+        - players.sqlite
+        - teleport_tubes
+        - unified_inventory_home.home
+#        - world.mt
+      register: world
+
+    - name: Copy mods stuff and map tiles
+      ansible.posix.synchronize:
+        src: "/home/peter/.minetest/worlds/kifserver/{{ item }}"
+        dest: "/var/lib/minetest/world/{{ item }}"
+        recursive: true
+        checksum: true
+      become: true
+      with_items:
+        - mod_storage
+        - mapserver.tiles
+
+    - name: Start minetest
+      systemd:
+        name: "{{ item }}"
+        state: started
+      become: true
+      with_items:
+        - minetest
+        - mapserver
-- 
GitLab