Skip to content

Commit bcbf3ff

Browse files
authored
Merge pull request #209 from OpenFactorioServerManager/develop
Develop -> Master
2 parents 5be9e79 + 431a256 commit bcbf3ff

File tree

184 files changed

+16877
-12957
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

184 files changed

+16877
-12957
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
on:
2+
release:
3+
types: [published]
4+
jobs:
5+
add-assets-to-release:
6+
runs-on: ubuntu-latest
7+
steps:
8+
- uses: actions/checkout@v2
9+
- uses: actions/setup-node@v1
10+
- uses: actions/setup-go@v2
11+
- name: Get git tag
12+
id: tag_name
13+
uses: little-core-labs/[email protected]
14+
- name: Get release
15+
id: get_release
16+
uses: bruceadams/[email protected]
17+
env:
18+
GITHUB_TOKEN: ${{ github.token }}
19+
- name: Create release bundles
20+
run: make gen_release
21+
- name: Upload release (windows)
22+
uses: actions/[email protected]
23+
env:
24+
GITHUB_TOKEN: ${{ github.token }}
25+
with:
26+
upload_url: ${{ steps.get_release.outputs.upload_url }}
27+
asset_path: ./build/factorio-server-manager-windows.zip
28+
asset_name: factorio-server-manager-windows-${{ steps.tag_name.outputs.tag }}.zip
29+
asset_content_type: application/octet-stream
30+
- name: Upload release (linux)
31+
uses: actions/[email protected]
32+
env:
33+
GITHUB_TOKEN: ${{ github.token }}
34+
with:
35+
upload_url: ${{ steps.get_release.outputs.upload_url }}
36+
asset_path: ./build/factorio-server-manager-linux.zip
37+
asset_name: factorio-server-manager-linux-${{ steps.tag_name.outputs.tag }}.zip
38+
asset_content_type: application/octet-stream
39+
docker-push:
40+
needs: ['add-assets-to-release']
41+
runs-on: ubuntu-latest
42+
steps:
43+
- uses: actions/checkout@v2
44+
- uses: actions/setup-node@v1
45+
- uses: actions/setup-go@v2
46+
- uses: docker/setup-buildx-action@v1
47+
- name: Get git tag
48+
id: tag_name
49+
uses: little-core-labs/[email protected]
50+
- name: Login to dockerhub
51+
uses: docker/login-action@v1
52+
with:
53+
username: ${{ secrets.DOCKERHUB_USERNAME }}
54+
password: ${{ secrets.DOCKERHUB_TOKEN }}
55+
- run: make build; cp build/factorio-server-manager-linux.zip docker/factorio-server-manager-linux.zip
56+
- uses: docker/build-push-action@v2
57+
with:
58+
context: ./docker/
59+
file: ./docker/Dockerfile-local
60+
push: true
61+
tags: ofsm/ofsm:latest,ofsm/ofsm:${{ steps.tag_name.outputs.tag }}
62+
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
on:
2+
push:
3+
branches:
4+
- '**'
5+
tags-ignore:
6+
- '*.*'
7+
pull_request:
8+
branches:
9+
- '**'
10+
env:
11+
factorio_password: ${{ secrets.FACTORIO_PASSWORD }}
12+
factorio_username: ${{ secrets.FACTORIO_USERNAME }}
13+
mod_dir: 'dev'
14+
mod_pack_dir: 'dev_pack'
15+
dir: '../'
16+
conf: '../../conf.json.example'
17+
jobs:
18+
test-npm:
19+
strategy:
20+
matrix:
21+
os: [ubuntu-latest, windows-latest]
22+
runs-on: ${{ matrix.os }}
23+
steps:
24+
- uses: actions/checkout@v2
25+
- uses: actions/setup-node@v1
26+
- run: make app/bundle
27+
test-go:
28+
strategy:
29+
matrix:
30+
os: [ubuntu-latest, windows-latest]
31+
go: ['1.14', '1.15', '1']
32+
runs-on: ${{ matrix.os }}
33+
name: test-go ${{ matrix.go }} (${{ matrix.os }})
34+
steps:
35+
- uses: actions/checkout@v2
36+
- name: Setup go
37+
uses: actions/setup-go@v2
38+
with:
39+
go-version: ${{ matrix.go }}
40+
- if: contains(matrix.os, 'ubuntu')
41+
run: |
42+
cd src
43+
if [[ -z "$factorio_password" ]]; then
44+
echo "run only short tests"
45+
go test ./... -v -test.short
46+
else
47+
echo "run full test suit"
48+
go test ./... -v
49+
fi
50+
- if: contains(matrix.os, 'windows')
51+
run: |
52+
cd src
53+
if ([Environment]::GetEnvironmentVariable('factorio_password', 'Machine')) {
54+
echo "run full test suit"
55+
go test ./... -v
56+
} else {
57+
echo "run only short tests"
58+
go test ./... -v "-test.short"
59+
}
60+
docker-push:
61+
needs: [test-npm, test-go]
62+
runs-on: ubuntu-latest
63+
if: github.event_name == 'push' && github.ref == 'refs/heads/develop'
64+
steps:
65+
- uses: actions/checkout@v2
66+
- uses: actions/setup-node@v1
67+
- uses: actions/setup-go@v2
68+
- uses: docker/setup-buildx-action@v1
69+
- name: Login to dockerhub
70+
uses: docker/login-action@v1
71+
with:
72+
username: ${{ secrets.DOCKERHUB_USERNAME }}
73+
password: ${{ secrets.DOCKERHUB_TOKEN }}
74+
- run: make build; cp build/factorio-server-manager-linux.zip docker/factorio-server-manager-linux.zip
75+
- id: docker_build
76+
uses: docker/build-push-action@v2
77+
with:
78+
context: ./docker/
79+
file: ./docker/Dockerfile-local
80+
push: true
81+
tags: ofsm/ofsm:develop

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
node_modules/
22
dev/
3+
dev_packs/
34
/factorio-server-manager*
45
/factorio_server_manager*
56
auth.leveldb*
@@ -9,11 +10,11 @@ build/
910
/mod_packs/*
1011
npm-debug.log
1112
.idea/
12-
/package-lock.json
1313
factorio.auth
1414
/pkg/
1515
mix-manifest.json
1616
/app/**/vendor/
1717
/app/*.js*
1818
/app/*.css*
1919
.vscode
20+
.env

.travis.yml

Lines changed: 0 additions & 40 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
# Changelog
2+
All notable changes to this project will be documented in this file.
3+
4+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
5+
6+
## [Unreleased]
7+
### Added
8+
- Autostart factorio, when starting the server-manager - Thanks to @Psychomantis71
9+
10+
### Changed
11+
- Complete rework of the UI - Thanks to @jannaahs
12+
- Backend is refactored and improved - Thanks to @knoxfighter and @jannaahs
13+
- Rework of the docker image, so it allows easy updating of factorio - Thanks to @ita-sammann
14+
15+
### Fixed
16+
- Console page is now working correctly (directly reloading still bugged until new UI) - Thanks to @jannaahs
17+
- Mod Search fixed by new implementation, which does not rely on the search endpoint of the mod portal - Thanks to @jannaahs
18+
- Listen on port 80, previously port 8080 was used. Can be changed with `--port <port>`
19+
20+
## [0.8.2] - 2020-01-08
21+
Many bugfixes and a few small features in this release.
22+
- Adds a flag for a custom glibc version, required on some distros such as CentOS
23+
- bugfixes with file handling
24+
- UI fixes and improvements
25+
- CI bug fixes and build improvements
26+
- and more bugfixes
27+
28+
Special thanks to @knoxfighter for all the contributions.
29+
30+
### Added
31+
- Support for 0.17 server-adminlist.json
32+
- Support for custom glibc location (RHEL/CENTOS)
33+
34+
### Changed
35+
- Use bootstrap-fileinputs for savefile upload
36+
- Login-Page uses bootstrap 4
37+
38+
### Fixed
39+
- Login Page Design
40+
- Sweetalert2 API changes
41+
- allow_commands not misinterpreted as boolean anymore
42+
- Fixed some filepaths on windows
43+
- Fixed hardcoded Settings Path
44+
- Fixed Upgrading, Removing Mods on Windows results in error
45+
46+
## [0.8.1] - 2019-03-01
47+
### Fixed
48+
- Fixed redirect, when not logged in
49+
- Fixed login page completely white
50+
51+
## [0.8.0] - 2019-02-27
52+
This release contains many bug fixes and features. Thanks to @knoxfighter @sean-callahan for the contributions!
53+
- Fixes error in Factorio 0.17 saves
54+
- Refactors and various bug fixes
55+
56+
## [0.7.5] - 2018-08-08
57+
## Fixed
58+
- fixes crash when mods have no basemodversion defined
59+
60+
## [0.7.4] - 2018-08-04
61+
- Ability to auto download mods used in a save file courtesy @knoxfighter
62+
- Fix bug in mod logging courtesy @c0nnex
63+
64+
## [0.7.3] - 2018-06-02
65+
- Fixes fields in the settings dialog unable to be set to false. Courtesy @winadam.
66+
- Various bugfixes in the mod settings page regarding version compatability. Courtesy @knoxfighter.
67+
68+
## [0.7.2] - 2018-05-02
69+
### Fixed
70+
- Fixes an error when searching in the mod portal.
71+
72+
## [0.7.1] - 2018-02-11
73+
### Fixed
74+
- Fixes an error in the configuration form where some fields were not editable.
75+
76+
## [0.7.0] - 2018-01-21
77+
- Rewritten mods section now supporting installing mods directly from the Factorio mod portal and many other features courtesy @knoxfighter
78+
- Various bug fixes
79+
80+
## [0.6.1] - 2017-12-22
81+
- Adds the ability to specify the IP address for the Factorio game server to bind too.
82+
- Updates the --rcon-password flag
83+
- Small fixes
84+
85+
## [0.6.0] - 2017-01-25
86+
This release adds a console feature using rcon to send commands and chat from the management interface.
87+
88+
## [0.5.2] - 2016-11-01
89+
This release moves the server-settings.json config file. It will now save the file in the factorio/config directory.
90+
91+
## [0.5.1] - 2016-10-31
92+
- Fixed bug where server-settings.json file is overwritten with default settings
93+
- Started adding UI for editing the server-settings.json file
94+
95+
## [0.5.0] - 2016-10-11
96+
- This release adds beta support for Windows users.
97+
- Various updates for Factorio 0.14 are also included.
98+
99+
## [0.4.3] - 2016-09-15
100+
This release has some small bug fixes in order to support Factorio server 0.14.
101+
- Made the --latency-ms optional as it is removed in version 0.14
102+
- Improved some error handling messages when starting the server.
103+
104+
## [0.4.2] - 2016-07-13
105+
This release fixes a bug with Factorio 0.13 where the full path for save files must be specified when launching the server.
106+
107+
## [0.4.1] - 2016-05-15
108+
This release fixes a bug where the UI reports an error when the Factorio Server was successfully started.
109+
110+
## [0.4.0] - 2016-05-15
111+
### New features
112+
- Abillity to create modpacks for easy distribution of mods
113+
- Multiple users are now supported, create and delete users in the settings menu
114+
115+
### Features
116+
- Allows control of the Factorio Server, starting and stopping the Factorio binary.
117+
- Allows the management of save files, upload, download and delete saves.
118+
- Manage installed mods, upload new ones, delete uneeded mods. Enable or disable individual mods.
119+
- Allow viewing of the server logs and current configuration.
120+
- Authentication for protecting against unauthorized users
121+
- Available as a Docker container
122+
- Abillity to create modpacks for easy distribution of mods
123+
- Multiple users are now supported, create and delete users in the settings menu
124+
125+
## [0.3.1] - 2016-05-03
126+
### Fixed
127+
Fixes bug in #24 where Docker container cannot find conf.json file.
128+
129+
## [0.3.0] - 2016-05-01
130+
### New features
131+
- This release adds an authentication feature in Factorio Server Manager.
132+
- Now able to be installed as a Docker container.
133+
- Admin user credentials are configured in the conf.json file included in the release zip file.
134+
135+
### Features
136+
- Allows control of the Factorio Server, starting and stopping the Factorio binary.
137+
- Allows the management of save files, upload, download and delete saves.
138+
- Manage installed mods, upload new ones, delete uneeded mods. Enable or disable individual mods.
139+
- Allow viewing of the server logs and current configuration.
140+
- Authentication for protecting against unauthorized users
141+
- Available as a Docker container
142+
143+
## [0.2.0] - 2016-04-27
144+
This release adds the ability to control the Factorio server. Allows stopping and starting of the server binary with advanced options.
145+
146+
### Features
147+
- Allows control of the Factorio Server, starting and stopping the Factorio binary.
148+
- Allows the management of save files, upload, download and delete saves.
149+
- Manage installed mods, upload new ones, delete uneeded mods. Enable or disable individual mods.
150+
- Allow viewing of the server logs and current configuration.
151+
152+
## [0.1.0] - 2016-04-25
153+
First release of Factorio Server Manager
154+
155+
### Features
156+
- Managing save files, create, download, delete saves
157+
- Managing installed mods
158+
- Factorio log tailing
159+
- Factorio server configuration viewing

Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ factorio-server-manager-linux:
2727
@echo "Building Backend - Linux"
2828
@mkdir -p factorio-server-manager
2929
@cd src; \
30-
GOOS=linux GOARCH=amd64 go build -o ../factorio-server-manager/factorio-server-manager .
30+
GO111MODULE=on GOOS=linux GOARCH=amd64 go build -ldflags="-extldflags=-static" -o ../factorio-server-manager/factorio-server-manager .
3131

3232
factorio-server-manager-windows:
3333
@echo "Building Backend - Windows"
3434
@mkdir -p factorio-server-manager
3535
@cd src; \
36-
GOOS=windows GOARCH=386 go build -o ../factorio-server-manager/factorio-server-manager.exe .
36+
GO111MODULE=on GOOS=windows GOARCH=386 go build -ldflags="-extldflags=-static" -o ../factorio-server-manager/factorio-server-manager.exe .
3737

3838
gen_release: build/factorio-server-manager-linux.zip build/factorio-server-manager-windows.zip
3939
@echo "Done"
@@ -47,6 +47,6 @@ clean:
4747
@-rm app/style.css.map
4848
@-rm -r app/fonts/vendor/
4949
@-rm -r app/images/vendor/
50-
@-rm -r node_modules/
50+
@-rm -rf node_modules/
5151
@-rm -r pkg/
5252
@-rm -r factorio-server-manager

0 commit comments

Comments
 (0)