You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is GitHub project template for a Go library. It has been created for ease-of-use for anyone who wants to:
9
9
10
10
- quickly get into Go without losing too much time on environment setup,
11
11
- create a new repoisitory with basic Continous Integration,
12
-
- write Go code on Linux, MacOS, Windows,
13
-
- use free tools.
12
+
- write Go code on Linux, MacOS, Windows.
14
13
15
14
It includes:
16
15
17
-
-editor config: [Visual Studio Code](https://code.visualstudio.com) with [Go](https://code.visualstudio.com/docs/languages/go) and [Remote Container](https://code.visualstudio.com/docs/remote/containers) support,
-[Visual Studio Code](https://code.visualstudio.com)configuration with [Go](https://code.visualstudio.com/docs/languages/go) and [Remote Container](https://code.visualstudio.com/docs/remote/containers) support,
`Star` this project if you find it valuable and worth maintaining.
23
22
@@ -29,10 +28,10 @@ It includes:
29
28
30
29
### Setup Development Environment
31
30
32
-
Take notice that this project is build in a way that gives the developer a lot of freedom on the development environment setup. Below you can find proposals when using Visual Studio Code.
31
+
Take notice that this project is build in a way that gives developers a lot of freedom on development environments setup. Below you can find proposals when using Visual Studio Code.
33
32
34
-
-**Bare metal:**Install Go, Visual Studio Code, Mage and GolangCI-Lint (see [Dockerfile](Dockerfile) for Mage and GolangCI-Lint installation commands).
35
-
-**Containers:**Install Docker, Visual Studio Code with Remote - Container extension. [Instructions](https://code.visualstudio.com/docs/remote/containers).
33
+
-**Bare metal:**See [Dockerfile](Dockerfile) for Mage and GolangCI-Lint installation commands.
-**Remote via SSH**: [Instructions](https://code.visualstudio.com/docs/remote/ssh).
37
36
38
37
### Build
@@ -46,7 +45,77 @@ Take notice that this project is build in a way that gives the developer a lot o
46
45
1.`Watch` this project to get notified about new releases, issues, etc.
47
46
1. Update Go, Mage and GolangCI-Lint version in [Dockerfile](Dockerfile). Take notice that when working on bare metal or via SSH, then you should also to do it manually on your machine.
48
47
1. Configure linters via [.golangci.yml](.golangci.yml).
49
-
1. Develop tasks/targets in [magefile.go](magefile.go) and [.vscode/tasks.json](.vscode/tasks.json).
48
+
1. Develop Mage targets in [magefile.go](magefile.go) and assosiated tasks in [.vscode/tasks.json](.vscode/tasks.json).
49
+
50
+
Notable files:
51
+
52
+
-[devcontainer.json](.devcontainer/devcontainer.json) - Visual Studio Code Remote Container configuration
2. Remove Mage installation from [Dockerfile](Dockerfile).
94
+
1. Update [docker-compose.yml](docker-compose.yml) and [.vscode/tasks.json](.vscode/tasks.json) to use `make`.
95
+
96
+
IfyouwanttouseMakeonbare-metalWindows,thenyoucanuse[WSL(WindowsSubsystemforLinux)](https://docs.microsoft.com/en-us/windows/wsl/install-win10) or install [Make Windows port to Git Bash](https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058).
GitHub Actions is out-of-the-box if you are already using GitHub.
105
+
However, changing to any other CI server should be very simple, because this repository uses Docker Compose to run CI build to make the transition easy.
0 commit comments