Upgrade to Go 1.20

With the release of Go 1.20, version 1.18 is not supported anymore. This
change upgrades the project to Go 1.20.
pull/446/head
Michael Manganiello 1 year ago
parent e4bbe8c035
commit 007857afd5

@ -101,7 +101,7 @@ jobs:
uses: actions/checkout@v2 uses: actions/checkout@v2
- uses: actions/setup-go@v3 - uses: actions/setup-go@v3
with: with:
go-version: '^1.18.3' go-version: '^1.20.1'
- name: Build Binaries - name: Build Binaries
run: | run: |
make binary-clean binary-all make binary-clean binary-all
@ -111,4 +111,4 @@ jobs:
name: binaries.zip name: binaries.zip
path: | path: |
scrutiny-web-* scrutiny-web-*
scrutiny-collector-metrics-* scrutiny-collector-metrics-*

@ -96,7 +96,7 @@ jobs:
name: workspace name: workspace
- uses: actions/setup-go@v3 - uses: actions/setup-go@v3
with: with:
go-version: '1.18.3' # The Go version to download (if necessary) and use. go-version: '1.20.1' # The Go version to download (if necessary) and use.
- name: Build Binaries - name: Build Binaries
run: | run: |
make binary-clean binary-all make binary-clean binary-all

@ -5,18 +5,18 @@ The Scrutiny repository is a [monorepo](https://en.wikipedia.org/wiki/Monorepo)
- Scrutiny Frontend Angular SPA - Scrutiny Frontend Angular SPA
- S.M.A.R.T Collector - S.M.A.R.T Collector
Depending on the functionality you are adding, you may need to setup a development environment for 1 or more projects. Depending on the functionality you are adding, you may need to setup a development environment for 1 or more projects.
# Modifying the Scrutiny Backend Server (API) # Modifying the Scrutiny Backend Server (API)
1. install the [Go runtime](https://go.dev/doc/install) (v1.18+) 1. install the [Go runtime](https://go.dev/doc/install) (v1.20+)
2. download the `scrutiny-web-frontend.tar.gz` for 2. download the `scrutiny-web-frontend.tar.gz` for
the [latest release](https://github.com/AnalogJ/scrutiny/releases/latest). Extract to a folder named `dist` the [latest release](https://github.com/AnalogJ/scrutiny/releases/latest). Extract to a folder named `dist`
3. create a `scrutiny.yaml` config file 3. create a `scrutiny.yaml` config file
```yaml ```yaml
# config file for local development. store as scrutiny.yaml # config file for local development. store as scrutiny.yaml
version: 1 version: 1
web: web:
listen: listen:
port: 8080 port: 8080
@ -29,13 +29,13 @@ Depending on the functionality you are adding, you may need to setup a developme
path: ./dist path: ./dist
influxdb: influxdb:
retention_policy: false retention_policy: false
log: log:
file: 'web.log' #absolute or relative paths allowed, eg. web.log file: 'web.log' #absolute or relative paths allowed, eg. web.log
level: DEBUG level: DEBUG
``` ```
4. start a InfluxDB docker container. 4. start a InfluxDB docker container.
```bash ```bash
docker run -p 8086:8086 --rm influxdb:2.2 docker run -p 8086:8086 --rm influxdb:2.2
``` ```
@ -60,16 +60,16 @@ The frontend is written in Angular. If you're working on the frontend and can us
3. open your browser and visit [http://localhost:4200/web](http://localhost:4200/web) 3. open your browser and visit [http://localhost:4200/web](http://localhost:4200/web)
# Modifying both Scrutiny Backend and Frontend Applications # Modifying both Scrutiny Backend and Frontend Applications
If you're developing a feature that requires changes to the backend and the frontend, or a frontend feature that requires real data, If you're developing a feature that requires changes to the backend and the frontend, or a frontend feature that requires real data,
you'll need to follow the steps below: you'll need to follow the steps below:
1. install the [Go runtime](https://go.dev/doc/install) (v1.18+) 1. install the [Go runtime](https://go.dev/doc/install) (v1.20+)
2. install [NodeJS](https://nodejs.org/en/download/) 2. install [NodeJS](https://nodejs.org/en/download/)
3. create a `scrutiny.yaml` config file 3. create a `scrutiny.yaml` config file
```yaml ```yaml
# config file for local development. store as scrutiny.yaml # config file for local development. store as scrutiny.yaml
version: 1 version: 1
web: web:
listen: listen:
port: 8080 port: 8080
@ -82,7 +82,7 @@ you'll need to follow the steps below:
path: ./dist path: ./dist
influxdb: influxdb:
retention_policy: false retention_policy: false
log: log:
file: 'web.log' #absolute or relative paths allowed, eg. web.log file: 'web.log' #absolute or relative paths allowed, eg. web.log
level: DEBUG level: DEBUG
@ -185,4 +185,4 @@ docker run -p 8086:8086 -d --rm \
influxdb:2.2 influxdb:2.2
go test ./... go test ./...
``` ```

@ -5,7 +5,7 @@
######## ########
FROM golang:1.18-bullseye as backendbuild FROM golang:1.20-bullseye as backendbuild
WORKDIR /go/src/github.com/analogj/scrutiny WORKDIR /go/src/github.com/analogj/scrutiny
COPY . /go/src/github.com/analogj/scrutiny COPY . /go/src/github.com/analogj/scrutiny

@ -4,7 +4,7 @@
######## ########
FROM golang:1.18-bullseye as backendbuild FROM golang:1.20-bullseye as backendbuild
WORKDIR /go/src/github.com/analogj/scrutiny WORKDIR /go/src/github.com/analogj/scrutiny

@ -5,7 +5,7 @@
######## ########
FROM golang:1.18-bullseye as backendbuild FROM golang:1.20-bullseye as backendbuild
WORKDIR /go/src/github.com/analogj/scrutiny WORKDIR /go/src/github.com/analogj/scrutiny

@ -1,6 +1,6 @@
module github.com/analogj/scrutiny module github.com/analogj/scrutiny
go 1.18 go 1.20
require ( require (
github.com/analogj/go-util v0.0.0-20190301173314-5295e364eb14 github.com/analogj/go-util v0.0.0-20190301173314-5295e364eb14

Loading…
Cancel
Save