diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 42ff2015..c9268f15 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,73 +24,73 @@ jobs: strategy: fail-fast: false matrix: - goversion: ["1.16", "1.17", "1.18"] - + goversion: ["1.17", "1.18"] + name: Build & Test (Linux, Go ${{ matrix.goversion }}) needs: [lint] - + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: ${{ matrix.goversion }} + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: ${{ matrix.goversion }} - - name: Build Yggdrasil - run: go build -v ./... + - name: Build Yggdrasil + run: go build -v ./... - - name: Unit tests - run: go test -v ./... + - name: Unit tests + run: go test -v ./... build-windows: strategy: fail-fast: false matrix: - goversion: ["1.16", "1.17", "1.18"] - + goversion: ["1.17", "1.18"] + name: Build & Test (Windows, Go ${{ matrix.goversion }}) needs: [lint] - + runs-on: windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: ${{ matrix.goversion }} + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: ${{ matrix.goversion }} - - name: Build Yggdrasil - run: go build -v ./... + - name: Build Yggdrasil + run: go build -v ./... + + - name: Unit tests + run: go test -v ./... - - name: Unit tests - run: go test -v ./... - build-macos: strategy: fail-fast: false matrix: - goversion: ["1.16", "1.17", "1.18"] - + goversion: ["1.17", "1.18"] + name: Build & Test (macOS, Go ${{ matrix.goversion }}) needs: [lint] - + runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: ${{ matrix.goversion }} + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: ${{ matrix.goversion }} - - name: Build Yggdrasil - run: go build -v ./... + - name: Build Yggdrasil + run: go build -v ./... - - name: Unit tests - run: go test -v ./... + - name: Unit tests + run: go test -v ./... tests-ok: name: All tests passed diff --git a/README.md b/README.md index f1f71d11..2bfb5b1d 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ connectivity - it also works over IPv4. Yggdrasil works on a number of platforms, including Linux, macOS, Ubiquiti EdgeRouter, VyOS, Windows, FreeBSD, OpenBSD and OpenWrt. -Please see our [Installation](https://yggdrasil-network.github.io/installation.html) +Please see our [Installation](https://yggdrasil-network.github.io/installation.html) page for more information. You may also find other platform-specific wrappers, scripts or tools in the `contrib` folder. @@ -25,7 +25,7 @@ or tools in the `contrib` folder. If you want to build from source, as opposed to installing one of the pre-built packages: -1. Install [Go](https://golang.org) (requires Go 1.16 or later) +1. Install [Go](https://golang.org) (requires Go 1.17 or later) 2. Clone this repository 2. Run `./build` @@ -57,6 +57,7 @@ other configuration such as listen addresses or multicast addresses, etc. ### Run Yggdrasil To run with the generated static configuration: + ``` ./yggdrasil -useconffile /path/to/yggdrasil.conf ``` diff --git a/go.mod b/go.mod index 9c957553..236877c0 100644 --- a/go.mod +++ b/go.mod @@ -1,22 +1,17 @@ module github.com/yggdrasil-network/yggdrasil-go -go 1.16 +go 1.17 require ( github.com/Arceliar/ironwood v0.0.0-20211125050254-8951369625d0 github.com/Arceliar/phony v0.0.0-20210209235338-dde1a8dca979 - github.com/VividCortex/ewma v1.2.0 // indirect github.com/cheggaaa/pb/v3 v3.0.8 - github.com/fatih/color v1.12.0 // indirect github.com/gologme/log v1.2.0 github.com/hashicorp/go-syslog v1.0.0 github.com/hjson/hjson-go v3.1.0+incompatible github.com/kardianos/minwinsvc v1.0.0 - github.com/mattn/go-isatty v0.0.13 // indirect - github.com/mattn/go-runewidth v0.0.13 // indirect github.com/mitchellh/mapstructure v1.4.1 github.com/vishvananda/netlink v1.1.0 - github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f // indirect golang.org/x/mobile v0.0.0-20220112015953-858099ff7816 golang.org/x/net v0.0.0-20211101193420-4a448f8816b3 golang.org/x/sys v0.0.0-20211102192858-4dd72447c267 @@ -24,3 +19,17 @@ require ( golang.zx2c4.com/wireguard v0.0.0-20211017052713-f87e87af0d9a golang.zx2c4.com/wireguard/windows v0.4.12 ) + +require ( + github.com/VividCortex/ewma v1.2.0 // indirect + github.com/fatih/color v1.12.0 // indirect + github.com/mattn/go-colorable v0.1.8 // indirect + github.com/mattn/go-isatty v0.0.13 // indirect + github.com/mattn/go-runewidth v0.0.13 // indirect + github.com/rivo/uniseg v0.2.0 // indirect + github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f // indirect + golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect + golang.org/x/mod v0.4.2 // indirect + golang.org/x/tools v0.1.8-0.20211022200916-316ba0b74098 // indirect + golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect +)