diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..9eb9c18 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,78 @@ +--- +kind: "pipeline" +type: "docker" +name: "Create Release from tag" + +trigger: + event: + - "tag" + +volumes: +- name: "tmp" + temp: {} +- name: "server" + temp: {} +- name: "client" + temp: {} +- name: "curse" + temp: {} + +steps: +- name: "Run build tool" + image: "gitea.marquis.site/operatioĊ„s/modpack_buildah" + volumes: + - name: "server" + path: "/out/server" + - name: "client" + path: "/out/client" + - name: "curse" + path: "/out/curse" + - name: "tmp" + path: "/tmp/modpack_buildah" + settings: + modpack__version: "$DRONE_TAG" + curseforge_apikey: + from_secret: "curseforge_apikey" + +- name: "Build and push server container image" + image: "plugins/docker" + settings: + registry: "gitea.marquis.site" + repo: "gitea.marquis.site/minecraft/atm8" + username: "drone-ci" + password: + from_secret: "gitea_registry_password" + tags: "$DRONE_TAG" + volumes: + - name: "server" + path: "/out/server" + +- name: "Update client files in repository" + image: "bash" + commands: + - "git checkout master" + - "git pull" + - "cp -r /out/client/* ." + volumes: + - name: "client" + path: "/out/client" + +- name: "Push new client version to repository" + image: "appleboy/drone-git-push" + settings: + branch: "master" + remote_name: "origin" + commit: true + commit_message: "Version $DRONE_TAG" + +- name: "Create Gitea Release for curse modpack" + image: "plugins/gitea-release" + settings: + api_key: + from_secret: "gitea_registry_password" + base_url: "gitea.marquis.site" + files: "/out/curse/*-$DRONE_TAG.zip" + title: "Version $DRONE_TAG" + volumes: + - name: "curse" + path: "/out/curse" diff --git a/config.yml b/config.yml new file mode 100644 index 0000000..5878148 --- /dev/null +++ b/config.yml @@ -0,0 +1,30 @@ +minecraft_version: 1.19.2 + +modpack: + curse_id: 520914 # ATM8 +# version: 1.0.19b +# extract_config: true # TODO: implement + +customizations: + server: + extra_files: + - "./server.properties.erb" + ignored: + - "user_jvm_args.txt" + - "*.sh" + - "*.bat" + client: + extra_files: + - "./servers.dat" + mods: + - mod_id: 261725 + name: "ItemZoom" + server: false + +# Fix stupid Curse API + - mod_id: 448233 + name: "Entity Culling" + download_url: "https://mediafilez.forgecdn.net/files/4404/949/entityculling-forge-1.6.1-mc1.19.2.jar" + - mod_id: 391382 + name: "More Overlays Updated" + download_url: "https://mediafilez.forgecdn.net/files/4322/445/moreoverlays-1.21.5-mc1.19.2.jar" diff --git a/server.properties.erb b/server.properties.erb new file mode 100644 index 0000000..448839d --- /dev/null +++ b/server.properties.erb @@ -0,0 +1,57 @@ +#Minecraft server properties +#Thu May 25 07:50:29 UTC 2023 +allow-flight=true +allow-nether=true +broadcast-console-to-ops=true +broadcast-rcon-to-ops=true +difficulty=normal +enable-command-block=false +enable-jmx-monitoring=false +enable-query=false +enable-rcon=false +enable-status=true +enforce-secure-profile=true +enforce-whitelist=true +entity-broadcast-range-percentage=100 +force-gamemode=false +function-permission-level=2 +gamemode=survival +generate-structures=true +generator-settings={} +hardcore=false +hide-online-players=false +level-name=world +level-seed= +level-type=minecraft\:normal +max-chained-neighbor-updates=1000000 +max-players=20 +max-tick-time=60000 +max-world-size=29999984 +motd=\u00A76\u00A7o<%= name %> Server\n\u00A77[\u00A73blue_smoothie & xy795\u00A77]\u00A7r - \u00A74v<%= version %> +network-compression-threshold=256 +online-mode=true +op-permission-level=4 +player-idle-timeout=0 +prevent-proxy-connections=false +previews-chat=false +pvp=true +query.port=25565 +rate-limit=0 +rcon.password= +rcon.port=25575 +require-resource-pack=false +resource-pack= +resource-pack-prompt= +resource-pack-sha1= +server-ip= +server-port=25565 +simulation-distance=10 +spawn-animals=true +spawn-monsters=true +spawn-npcs=true +spawn-protection=16 +sync-chunk-writes=true +text-filtering-config= +use-native-transport=true +view-distance=10 +white-list=true diff --git a/servers.dat b/servers.dat new file mode 100644 index 0000000..05845ad Binary files /dev/null and b/servers.dat differ