diff --git a/.drone.yml b/.drone.yml
index 1b156eb..f3782a7 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -1,89 +1,47 @@
---
kind: pipeline
type: docker
-name: cleanup-before
+name: build-linux-amd64
-steps:
- - name: clean
- image: alpine
- commands:
- - rm -rf /build/*
- volumes:
- - name: build
- path: /build
- when:
- event: tag
-
-volumes:
- - name: build
- host:
- path: /tmp/fuelprices/build
-
----
-kind: pipeline
-type: docker
-name: default-linux-amd64
+environment:
+ GOOS: linux
+ GOARCH: amd64
+ GOOPTIONS: -mod=vendor
+ SRCFILES: cmd/fuelprices/*.go
+ PROJECTNAME: fuelprices
steps:
- name: build
image: golang
commands:
- - ./ci-build.sh build
- environment:
- GOOS: linux
- GOARCH: amd64
- volumes:
- - name: build
- path: /build
-
-volumes:
- - name: build
- host:
- path: /tmp/fuelprices/build
-
-depends_on:
- - cleanup-before
+ - go build -o $PROJECTNAME $GOOPTIONS $SRCFILES
+ when:
+ event:
+ exclude:
+ - tag
---
kind: pipeline
type: docker
-name: default-linux-arm64
+name: gitea-release-linux-amd64
+
+environment:
+ GOOS: linux
+ GOARCH: amd64
+ GOOPTIONS: -mod=vendor
+ SRCFILES: cmd/fuelprices/*.go
+ PROJECTNAME: fuelprices
steps:
- name: build
image: golang
commands:
- - ./ci-build.sh build
- environment:
- GOOS: linux
- GOARCH: arm64
- volumes:
- - name: build
- path: /build
-
-volumes:
- - name: build
- host:
- path: /tmp/fuelprices/build
-
-depends_on:
- - cleanup-before
-
----
-kind: pipeline
-type: docker
-name: gitea-release
-
-steps:
- - name: move
- image: alpine
- commands:
- - mv build/* ./
- volumes:
- - name: build
- path: /drone/src/build
+ - go build -o $PROJECTNAME $GOOPTIONS $SRCFILES
+ - tar -czvf $PROJECTNAME-$DRONE_TAG-$GOOS-$GOARCH.tar.gz $PROJECTNAME
+ - echo $PROJECTNAME $DRONE_TAG > VERSION
when:
- event: tag
+ event:
+ - tag
- name: release
image: plugins/gitea-release
settings:
@@ -95,50 +53,6 @@ steps:
- sha256
- sha512
title: VERSION
- volumes:
- - name: build
- path: /drone/src/build
when:
- event: tag
- - name: ls
- image: alpine
- commands:
- - find .
- volumes:
- - name: build
- path: /drone/src/build
- when:
- event: tag
-
-volumes:
- - name: build
- host:
- path: /tmp/fuelprices/build
-
-depends_on:
- - default-linux-amd64
- - default-linux-arm64
-
----
-kind: pipeline
-type: docker
-name: cleanup-after
-
-steps:
- - name: clean
- image: alpine
- commands:
- - rm -rf /build/*
- volumes:
- - name: build
- path: /build
- when:
- event: tag
-
-volumes:
- - name: build
- host:
- path: /tmp/fuelprices/build
-
-depends_on:
- - gitea-release
+ event:
+ - tag
diff --git a/go.mod b/go.mod
index 50fd3c2..b7361a3 100644
--- a/go.mod
+++ b/go.mod
@@ -3,12 +3,12 @@ module git.paulbsd.com/paulbsd/fuelprices
go 1.17
require (
- github.com/antchfx/xmlquery v1.3.8
+ github.com/antchfx/xmlquery v1.3.10
github.com/antchfx/xpath v1.2.0 // indirect
- github.com/influxdata/influxdb1-client v0.0.0-20200827194710-b269163b24ab
- golang.org/x/net v0.0.0-20211203184738-4852103109b8 // indirect
+ github.com/influxdata/influxdb1-client v0.0.0-20220302092344-a9ab5670611c
+ golang.org/x/net v0.0.0-20220325170049-de3da57026de // indirect
golang.org/x/text v0.3.7 // indirect
- gopkg.in/ini.v1 v1.66.2
+ gopkg.in/ini.v1 v1.66.4
)
require (
diff --git a/go.sum b/go.sum
index 63d46cb..6696507 100644
--- a/go.sum
+++ b/go.sum
@@ -1,5 +1,7 @@
github.com/antchfx/xmlquery v1.3.8 h1:dRnBQM3Vk5BVJFvFwsHOLAox+mEiNw5ZusaUNCrEdoU=
github.com/antchfx/xmlquery v1.3.8/go.mod h1:wojC/BxjEkjJt6dPiAqUzoXO5nIMWtxHS8PD8TmN4ks=
+github.com/antchfx/xmlquery v1.3.10 h1:U2yMwr8U0KmGM2iDG2Ky/3LfxNsiK4uw1bSBkeMO9+g=
+github.com/antchfx/xmlquery v1.3.10/go.mod h1:wojC/BxjEkjJt6dPiAqUzoXO5nIMWtxHS8PD8TmN4ks=
github.com/antchfx/xpath v1.2.0 h1:mbwv7co+x0RwgeGAOHdrKy89GvHaGvxxBtPK0uF9Zr8=
github.com/antchfx/xpath v1.2.0/go.mod h1:i54GszH55fYfBmoZXapTHN8T8tkcHfRgLyVwwqzXNcs=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -10,6 +12,8 @@ github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/influxdata/influxdb1-client v0.0.0-20200827194710-b269163b24ab h1:HqW4xhhynfjrtEiiSGcQUd6vrK23iMam1FO8rI7mwig=
github.com/influxdata/influxdb1-client v0.0.0-20200827194710-b269163b24ab/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo=
+github.com/influxdata/influxdb1-client v0.0.0-20220302092344-a9ab5670611c h1:qSHzRbhzK8RdXOsAdfDgO49TtqC1oZ+acxPrkfTxcCs=
+github.com/influxdata/influxdb1-client v0.0.0-20220302092344-a9ab5670611c/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@@ -21,6 +25,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20211203184738-4852103109b8 h1:PFkPt/jI9Del3hmFplBtRp8tDhSRpFu7CyRs7VmEC0M=
golang.org/x/net v0.0.0-20211203184738-4852103109b8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
+golang.org/x/net v0.0.0-20220325170049-de3da57026de h1:pZB1TWnKi+o4bENlbzAgLrEbY4RMYmUIRobMcSmfeYc=
+golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -35,6 +41,8 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/ini.v1 v1.66.2 h1:XfR1dOYubytKy4Shzc2LHrrGhU0lDCfDGG1yLPmpgsI=
gopkg.in/ini.v1 v1.66.2/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
+gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4=
+gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v22aHH28wwpauUhK9Oo=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/vendor/github.com/antchfx/xmlquery/README.md b/vendor/github.com/antchfx/xmlquery/README.md
index bae7fc3..f9f7a3f 100644
--- a/vendor/github.com/antchfx/xmlquery/README.md
+++ b/vendor/github.com/antchfx/xmlquery/README.md
@@ -15,26 +15,13 @@ data or evaluate from XML documents with an XPath expression.
XPATH query strings. Enabling caching can avoid recompile XPath expression for
each query.
-Change Logs
-===
+You can visit this page to learn about the supported XPath(1.0/2.0) syntax. https://github.com/antchfx/xpath
-2020-08-??
-- Add XML stream loading and parsing support.
+[htmlquery](https://github.com/antchfx/htmlquery) - Package for the HTML document query.
-2019-11-11
-- Add XPath query caching.
+[xmlquery](https://github.com/antchfx/xmlquery) - Package for the XML document query.
-2019-10-05
-- Add new methods compatible with invalid XPath expression error: `QueryAll` and `Query`.
-- Add `QuerySelector` and `QuerySelectorAll` methods, support for reused query objects.
-- PR [#12](https://github.com/antchfx/xmlquery/pull/12) (Thanks @FrancescoIlario)
-- PR [#11](https://github.com/antchfx/xmlquery/pull/11) (Thanks @gjvnq)
-
-2018-12-23
-- Added XML output including comment nodes. [#9](https://github.com/antchfx/xmlquery/issues/9)
-
-2018-12-03
-- Added support to attribute name with namespace prefix and XML output. [#6](https://github.com/antchfx/xmlquery/issues/6)
+[jsonquery](https://github.com/antchfx/jsonquery) - Package for the JSON document query.
Installation
====
@@ -42,6 +29,52 @@ Installation
$ go get github.com/antchfx/xmlquery
```
+
+Quick Starts
+===
+
+```go
+import (
+ "github.com/antchfx/xmlquery"
+)
+
+func main(){
+ s := `
+
+
+ W3Schools Home Page
+ https://www.w3schools.com
+ Free web building tutorials
+ -
+ RSS Tutorial
+ https://www.w3schools.com/xml/xml_rss.asp
+ New RSS tutorial on W3Schools
+
+ -
+ XML Tutorial
+ https://www.w3schools.com/xml
+ New XML tutorial on W3Schools
+
+
+`
+
+ doc, err := xmlquery.Parse(strings.NewReader(s))
+ if err != nil {
+ panic(err)
+ }
+ channel := xmlquery.FindOne(doc, "//channel")
+ if n := channel.SelectElement("title"); n != nil {
+ fmt.Printf("title: %s\n", n.InnerText())
+ }
+ if n := channel.SelectElement("link"); n != nil {
+ fmt.Printf("link: %s\n", n.InnerText())
+ }
+ for i, n := range xmlquery.Find(doc, "//item/title") {
+ fmt.Printf("#%d %s\n", i, n.InnerText())
+ }
+}
+```
+
Getting Started
===
@@ -204,59 +237,6 @@ fmt.Println(doc.OutputXML(true))
// W3Schools Home Page
```
-Quick Tutorial
-===
-
-```go
-import (
- "github.com/antchfx/xmlquery"
-)
-
-func main(){
- s := `
-
-
- W3Schools Home Page
- https://www.w3schools.com
- Free web building tutorials
- -
- RSS Tutorial
- https://www.w3schools.com/xml/xml_rss.asp
- New RSS tutorial on W3Schools
-
- -
- XML Tutorial
- https://www.w3schools.com/xml
- New XML tutorial on W3Schools
-
-
-`
-
- doc, err := xmlquery.Parse(strings.NewReader(s))
- if err != nil {
- panic(err)
- }
- channel := xmlquery.FindOne(doc, "//channel")
- if n := channel.SelectElement("title"); n != nil {
- fmt.Printf("title: %s\n", n.InnerText())
- }
- if n := channel.SelectElement("link"); n != nil {
- fmt.Printf("link: %s\n", n.InnerText())
- }
- for i, n := range xmlquery.Find(doc, "//item/title") {
- fmt.Printf("#%d %s\n", i, n.InnerText())
- }
-}
-```
-
-List of supported XPath query packages
-===
-| Name | Description |
-| ------------------------------------------------- | ----------------------------------------- |
-| [htmlquery](https://github.com/antchfx/htmlquery) | XPath query package for HTML documents |
-| [xmlquery](https://github.com/antchfx/xmlquery) | XPath query package for XML documents |
-| [jsonquery](https://github.com/antchfx/jsonquery) | XPath query package for JSON documents |
-
- Questions
+Questions
===
Please let me know if you have any questions
diff --git a/vendor/github.com/antchfx/xmlquery/node.go b/vendor/github.com/antchfx/xmlquery/node.go
index be6e31a..4643695 100644
--- a/vendor/github.com/antchfx/xmlquery/node.go
+++ b/vendor/github.com/antchfx/xmlquery/node.go
@@ -4,6 +4,7 @@ import (
"bytes"
"encoding/xml"
"fmt"
+ "html"
"strings"
)
@@ -89,7 +90,7 @@ func outputXML(buf *bytes.Buffer, n *Node, preserveSpaces bool) {
preserveSpaces = calculatePreserveSpaces(n, preserveSpaces)
switch n.Type {
case TextNode:
- xml.EscapeText(buf, []byte(n.sanitizedData(preserveSpaces)))
+ buf.WriteString(html.EscapeString(n.sanitizedData(preserveSpaces)))
return
case CharDataNode:
buf.WriteString(" p.prev.level {
AddChild(p.prev, node)
+ } else if p.level < p.prev.level {
+ for i := p.prev.level - p.level; i > 1; i-- {
+ p.prev = p.prev.Parent
+ }
+ AddSibling(p.prev.Parent, node)
}
p.prev = node
case xml.Directive:
@@ -307,7 +312,7 @@ type StreamParser struct {
// streamElementFilter, if provided, cannot be successfully parsed and compiled
// into a valid xpath query.
func CreateStreamParser(r io.Reader, streamElementXPath string, streamElementFilter ...string) (*StreamParser, error) {
- return CreateStreamParserWithOptions(r, ParserOptions{}, streamElementXPath, streamElementFilter...)
+ return CreateStreamParserWithOptions(r, ParserOptions{}, streamElementXPath, streamElementFilter...)
}
// CreateStreamParserWithOptions is like CreateStreamParser, but with custom options
diff --git a/vendor/github.com/influxdata/influxdb1-client/v2/client.go b/vendor/github.com/influxdata/influxdb1-client/v2/client.go
index ddd0b48..35252fa 100644
--- a/vendor/github.com/influxdata/influxdb1-client/v2/client.go
+++ b/vendor/github.com/influxdata/influxdb1-client/v2/client.go
@@ -556,7 +556,10 @@ func (c *client) Query(q Query) (*Response, error) {
if err != nil {
return nil, err
}
- defer resp.Body.Close()
+ defer func() {
+ io.Copy(ioutil.Discard, resp.Body) // https://github.com/influxdata/influxdb1-client/issues/58
+ resp.Body.Close()
+ }()
if err := checkResponse(resp); err != nil {
return nil, err
diff --git a/vendor/gopkg.in/ini.v1/.editorconfig b/vendor/gopkg.in/ini.v1/.editorconfig
new file mode 100644
index 0000000..4a2d918
--- /dev/null
+++ b/vendor/gopkg.in/ini.v1/.editorconfig
@@ -0,0 +1,12 @@
+# http://editorconfig.org
+
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*_test.go]
+trim_trailing_whitespace = false
diff --git a/vendor/gopkg.in/ini.v1/.gitignore b/vendor/gopkg.in/ini.v1/.gitignore
index 1241112..588388b 100644
--- a/vendor/gopkg.in/ini.v1/.gitignore
+++ b/vendor/gopkg.in/ini.v1/.gitignore
@@ -4,3 +4,4 @@ ini.sublime-workspace
testdata/conf_reflect.ini
.idea
/.vscode
+.DS_Store
diff --git a/vendor/gopkg.in/ini.v1/file.go b/vendor/gopkg.in/ini.v1/file.go
index 7b4e560..9d91c31 100644
--- a/vendor/gopkg.in/ini.v1/file.go
+++ b/vendor/gopkg.in/ini.v1/file.go
@@ -442,16 +442,16 @@ func (f *File) writeToBuffer(indent string) (*bytes.Buffer, error) {
kname = `"""` + kname + `"""`
}
- for _, val := range key.ValueWithShadows() {
+ writeKeyValue := func(val string) (bool, error) {
if _, err := buf.WriteString(kname); err != nil {
- return nil, err
+ return false, err
}
if key.isBooleanType {
if kname != sec.keyList[len(sec.keyList)-1] {
buf.WriteString(LineBreak)
}
- continue KeyList
+ return true, nil
}
// Write out alignment spaces before "=" sign
@@ -468,10 +468,27 @@ func (f *File) writeToBuffer(indent string) (*bytes.Buffer, error) {
val = `"` + val + `"`
}
if _, err := buf.WriteString(equalSign + val + LineBreak); err != nil {
+ return false, err
+ }
+ return false, nil
+ }
+
+ shadows := key.ValueWithShadows()
+ if len(shadows) == 0 {
+ if _, err := writeKeyValue(""); err != nil {
return nil, err
}
}
+ for _, val := range shadows {
+ exitLoop, err := writeKeyValue(val)
+ if err != nil {
+ return nil, err
+ } else if exitLoop {
+ continue KeyList
+ }
+ }
+
for _, val := range key.nestedValues {
if _, err := buf.WriteString(indent + " " + val + LineBreak); err != nil {
return nil, err
diff --git a/vendor/gopkg.in/ini.v1/key.go b/vendor/gopkg.in/ini.v1/key.go
index 0302c29..a19d9f3 100644
--- a/vendor/gopkg.in/ini.v1/key.go
+++ b/vendor/gopkg.in/ini.v1/key.go
@@ -110,15 +110,24 @@ func (k *Key) Value() string {
return k.value
}
-// ValueWithShadows returns raw values of key and its shadows if any.
+// ValueWithShadows returns raw values of key and its shadows if any. Shadow
+// keys with empty values are ignored from the returned list.
func (k *Key) ValueWithShadows() []string {
if len(k.shadows) == 0 {
+ if k.value == "" {
+ return []string{}
+ }
return []string{k.value}
}
- vals := make([]string, len(k.shadows)+1)
- vals[0] = k.value
- for i := range k.shadows {
- vals[i+1] = k.shadows[i].value
+
+ vals := make([]string, 0, len(k.shadows)+1)
+ if k.value != "" {
+ vals = append(vals, k.value)
+ }
+ for _, s := range k.shadows {
+ if s.value != "" {
+ vals = append(vals, s.value)
+ }
}
return vals
}
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 679a2ab..b300495 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -1,4 +1,4 @@
-# github.com/antchfx/xmlquery v1.3.8
+# github.com/antchfx/xmlquery v1.3.10
## explicit; go 1.14
github.com/antchfx/xmlquery
# github.com/antchfx/xpath v1.2.0
@@ -9,14 +9,14 @@ github.com/antchfx/xpath
# github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
## explicit
github.com/golang/groupcache/lru
-# github.com/influxdata/influxdb1-client v0.0.0-20200827194710-b269163b24ab
+# github.com/influxdata/influxdb1-client v0.0.0-20220302092344-a9ab5670611c
## explicit
github.com/influxdata/influxdb1-client/models
github.com/influxdata/influxdb1-client/pkg/escape
github.com/influxdata/influxdb1-client/v2
# github.com/stretchr/testify v1.7.0
## explicit; go 1.13
-# golang.org/x/net v0.0.0-20211203184738-4852103109b8
+# golang.org/x/net v0.0.0-20220325170049-de3da57026de
## explicit; go 1.17
golang.org/x/net/html
golang.org/x/net/html/atom
@@ -40,7 +40,7 @@ golang.org/x/text/internal/utf8internal
golang.org/x/text/language
golang.org/x/text/runes
golang.org/x/text/transform
-# gopkg.in/ini.v1 v1.66.2
+# gopkg.in/ini.v1 v1.66.4
## explicit
gopkg.in/ini.v1
# gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b