CI revamp part 2 (#1875)

* Added Makefile
* Updated README with the new information
* Updated Github Actions
* Added FreeBSD ARM builds
* Prepared to our internal CI
* Improved the auto-update version check
This commit is contained in:
Andrey Meshkov
2020-07-09 19:54:53 +03:00
committed by GitHub
parent ff23d7b6d7
commit 632a47d56f
11 changed files with 472 additions and 313 deletions

View File

@@ -14,9 +14,6 @@
<a href="https://twitter.com/AdGuard">Twitter</a> |
<a href="https://t.me/adguard_en">Telegram</a>
<br /><br />
<a href="https://travis-ci.com/AdguardTeam/AdGuardHome">
<img src="https://travis-ci.com/AdguardTeam/AdGuardHome.svg" alt="Build status" />
</a>
<a href="https://codecov.io/github/AdguardTeam/AdGuardHome?branch=master">
<img src="https://img.shields.io/codecov/c/github/AdguardTeam/AdGuardHome/master.svg" alt="Code Coverage" />
</a>
@@ -153,17 +150,11 @@ Is there a chance to handle this in the future? DNS will never be enough to do t
### Prerequisites
You will need:
You will need this to build AdGuard Home:
* [go](https://golang.org/dl/) v1.14 or later.
* [node.js](https://nodejs.org/en/download/) v10 or later.
You can either install them via the provided links or use [brew.sh](https://brew.sh/) if you're on Mac:
```bash
brew install go node
```
### Building
Open Terminal and execute these commands:
@@ -174,15 +165,26 @@ cd AdGuardHome
make
```
#### (For devs) Upload translations
```
node upload.js
```
Check the [`Makefile`](https://github.com/AdguardTeam/AdGuardHome/blob/master/Makefile) to learn about other commands.
#### (For devs) Download translations
```
node download.js
```
#### Preparing release
You'll need this to prepare a release build:
* [goreleaser](https://goreleaser.com/)
* [snapcraft](https://snapcraft.io/)
Run `make snapshot` or `make release` to build all AdGuard distrs.
#### Docker image
* Run `make docker` to build the Docker image locally.
* Run `make docker-multi-arch` to build the multi-arch Docker image (the one that we publish to Docker Hub).
### Resources that we update periodically
* `scripts/translations`
* `scripts/whotracksme`
<a id="contributing"></a>
## Contributing