Initial commit. Should work, but no promises (yet).
This commit is contained in:
143
env/env.go
vendored
Normal file
143
env/env.go
vendored
Normal file
@@ -0,0 +1,143 @@
|
||||
package env
|
||||
|
||||
import (
|
||||
// other
|
||||
"github.com/vrischmann/envconfig"
|
||||
|
||||
"fmt"
|
||||
)
|
||||
|
||||
var Data *environmentData
|
||||
|
||||
type environmentData struct {
|
||||
CI bool `envconfig:"optional"`
|
||||
IsDrone bool `envconfig:"DRONE,optional"`
|
||||
Debug bool `envconfig:"optional"`
|
||||
|
||||
Drone struct {
|
||||
Branch string `envconfig:"optional"`
|
||||
Build struct {
|
||||
Action string `envconfig:"optional"`
|
||||
Created int `envconfig:"optional"`
|
||||
Event string `envconfig:"optional"`
|
||||
Finished int `envconfig:"optional"`
|
||||
Link string `envconfig:"optional"`
|
||||
Number int `envconfig:"optional"`
|
||||
Parent string `envconfig:"optional"`
|
||||
Started int `envconfig:"optional"`
|
||||
Status string `envconfig:"optional"`
|
||||
}
|
||||
CommitHash string `envconfig:"DRONE_COMMIT,optional"`
|
||||
Commit struct {
|
||||
After string `envconfig:"optional"`
|
||||
AuthorName string `envconfig:"DRONE_COMMIT_AUTHOR,optional"`
|
||||
Author struct {
|
||||
Avatar string `envconfig:"optional"`
|
||||
Email string `envconfig:"optional"`
|
||||
Name string `envconfig:"optional"`
|
||||
}
|
||||
Before string `envconfig:"optional"`
|
||||
Branch string `envconfig:"optional"`
|
||||
Link string `envconfig:"optional"`
|
||||
Message string `envconfig:"optional"`
|
||||
Ref string `envconfig:"optional"`
|
||||
Sha string `envconfig:"optional"`
|
||||
}
|
||||
Deploy struct {
|
||||
To string `envconfig:"optional"`
|
||||
}
|
||||
Failed struct {
|
||||
Stages string `envconfig:"optional"`
|
||||
Steps string `envconfig:"optional"`
|
||||
}
|
||||
Git struct {
|
||||
HTTP struct {
|
||||
URL string `envconfig:"optional"`
|
||||
}
|
||||
SSH struct {
|
||||
URL string `envconfig:"optional"`
|
||||
}
|
||||
}
|
||||
Pull struct {
|
||||
Request string `envconfig:"optional"`
|
||||
}
|
||||
Remote struct {
|
||||
URL string `envconfig:"optional"`
|
||||
}
|
||||
RepoName string `envconfig:"DRONE_REPO_NAME,optional"`
|
||||
Repo struct {
|
||||
Branch string `envconfig:"optional"`
|
||||
Link string `envconfig:"optional"`
|
||||
Name string `envconfig:"optional"`
|
||||
Namespace string `envconfig:"optional"`
|
||||
Owner string `envconfig:"optional"`
|
||||
Private bool `envconfig:"optional"`
|
||||
SCM string `envconfig:"optional"`
|
||||
Visibility string `envconfig:"optional"`
|
||||
}
|
||||
SemverData string `envconfig:"DRONE_SEMVER,optional"`
|
||||
Semver struct {
|
||||
Build string `envconfig:"optional"`
|
||||
Error string `envconfig:"optional"`
|
||||
Major int `envconfig:"optional"`
|
||||
Minor int `envconfig:"optional"`
|
||||
Patch int `envconfig:"optional"`
|
||||
Prerelease string `envconfig:"optional"`
|
||||
Short string `envconfig:"optional"`
|
||||
}
|
||||
Source struct {
|
||||
Branch string `envconfig:"optional"`
|
||||
}
|
||||
Stage struct {
|
||||
Arch string `envconfig:"optional"`
|
||||
Depends struct {
|
||||
On string `envconfig:"optional"`
|
||||
}
|
||||
Finished int `envconfig:"optional"`
|
||||
Kind string `envconfig:"optional"`
|
||||
Machine string `envconfig:"optional"`
|
||||
Name string `envconfig:"optional"`
|
||||
Number int `envconfig:"optional"`
|
||||
OS string `envconfig:"optional"`
|
||||
Started int `envconfig:"optional"`
|
||||
Status string `envconfig:"optional"`
|
||||
Type string `envconfig:"optional"`
|
||||
Variant string `envconfig:"optional"`
|
||||
}
|
||||
Step struct {
|
||||
Name string `envconfig:"optional"`
|
||||
Number int `envconfig:"optional"`
|
||||
}
|
||||
System struct {
|
||||
Host string `envconfig:"optional"`
|
||||
Hostname string `envconfig:"optional"`
|
||||
Proto string `envconfig:"optional"`
|
||||
Version string `envconfig:"optional"`
|
||||
}
|
||||
Tag string `envconfig:"optional"`
|
||||
Target struct {
|
||||
Branch string `envconfig:"optional"`
|
||||
}
|
||||
}
|
||||
Plugin struct {
|
||||
Avatar struct {
|
||||
URL string `envconfig:"optional"`
|
||||
}
|
||||
Color string `envconfig:"optional"`
|
||||
Message string `envconfig:"optional"`
|
||||
Webhook struct {
|
||||
ID string `envconfig:"optional"`
|
||||
Token string `envconfig:"optional"`
|
||||
}
|
||||
TTS bool `envconfig:"optional"`
|
||||
Username string `envconfig:"optional"`
|
||||
}
|
||||
}
|
||||
|
||||
func ParseEnv() {
|
||||
Data = &environmentData{}
|
||||
err := envconfig.Init(Data)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user