4 Commits

Author SHA1 Message Date
2089311c85 update deps
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-10-27 22:56:15 +03:00
bfff6a7e87 update workflows
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-10-27 19:04:22 +03:00
eb94a33848 fix import guard
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-10-26 23:27:52 +03:00
d014fc95f6 update import paths
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-10-26 23:25:18 +03:00
7 changed files with 47 additions and 79 deletions

View File

@@ -9,7 +9,7 @@
# the `language` matrix defined below to confirm you have the correct set of # the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages. # supported CodeQL languages.
# #
name: "CodeQL" name: "codeql"
on: on:
workflow_run: workflow_run:
@@ -17,16 +17,16 @@ on:
types: types:
- completed - completed
push: push:
branches: [ master ] branches: [ master, v3 ]
pull_request: pull_request:
# The branches below must be a subset of the branches above # The branches below must be a subset of the branches above
branches: [ master ] branches: [ master, v3 ]
schedule: schedule:
- cron: '34 1 * * 0' - cron: '34 1 * * 0'
jobs: jobs:
analyze: analyze:
name: Analyze name: analyze
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
actions: read actions: read
@@ -42,11 +42,14 @@ jobs:
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
steps: steps:
- name: Checkout repository - name: checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
- name: setup
uses: actions/setup-go@v2
with:
go-version: 1.16
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: init
uses: github/codeql-action/init@v1 uses: github/codeql-action/init@v1
with: with:
languages: ${{ matrix.language }} languages: ${{ matrix.language }}
@@ -57,7 +60,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below) # If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild - name: autobuild
uses: github/codeql-action/autobuild@v1 uses: github/codeql-action/autobuild@v1
# Command-line programs to run using the OS shell. # Command-line programs to run using the OS shell.
@@ -71,5 +74,5 @@ jobs:
# make bootstrap # make bootstrap
# make release # make release
- name: Perform CodeQL Analysis - name: analyze
uses: github/codeql-action/analyze@v1 uses: github/codeql-action/analyze@v1

View File

@@ -1,66 +1,31 @@
name: "prautomerge" name: "prautomerge"
on: on:
workflow_run: pull_request_target:
workflows: ["prbuild"] types: [assigned, opened, synchronize, reopened]
types:
- completed
permissions: permissions:
contents: write
pull-requests: write pull-requests: write
contents: write
jobs: jobs:
Dependabot-Automerge: dependabot:
runs-on: ubuntu-latest runs-on: ubuntu-latest
# Contains workaround to execute if dependabot updates the PR by checking for the base branch in the linked PR if: ${{ github.actor == 'dependabot[bot]' }}
# The the github.event.workflow_run.event value is 'push' and not 'pull_request'
# dont work with multiple workflows when last returns success
if: >-
github.event.workflow_run.conclusion == 'success'
&& github.actor == 'dependabot[bot]'
&& github.event.sender.login == 'dependabot[bot]'
&& github.event.sender.type == 'Bot'
&& (github.event.workflow_run.event == 'pull_request'
|| (github.event.workflow_run.event == 'push' && github.event.workflow_run.pull_requests[0].base.ref == github.event.repository.default_branch ))
steps: steps:
- name: Approve Changes and Merge changes if label 'dependencies' is set - name: metadata
uses: actions/github-script@v4 id: metadata
uses: dependabot/fetch-metadata@v1.1.1
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: "${{ secrets.TOKEN }}"
script: | - name: approve
console.log(context.payload.workflow_run); run: gh pr review --approve "$PR_URL"
env:
var labelNames = await github.paginate( PR_URL: ${{github.event.pull_request.html_url}}
github.issues.listLabelsOnIssue, GITHUB_TOKEN: ${{secrets.TOKEN}}
{ - name: merge
repo: context.repo.repo, if: ${{contains(steps.metadata.outputs.dependency-names, 'go.unistack.org')}}
owner: context.repo.owner, run: gh pr merge --auto --merge "$PR_URL"
issue_number: context.payload.workflow_run.pull_requests[0].number, env:
}, PR_URL: ${{github.event.pull_request.html_url}}
(response) => response.data.map( GITHUB_TOKEN: ${{secrets.TOKEN}}
(label) => label.name
)
);
console.log(labelNames);
if (labelNames.includes('dependencies')) {
console.log('Found label');
await github.pulls.createReview({
repo: context.repo.repo,
owner: context.repo.owner,
pull_number: context.payload.workflow_run.pull_requests[0].number,
event: 'APPROVE'
});
console.log('Approved PR');
await github.pulls.merge({
repo: context.repo.repo,
owner: context.repo.owner,
pull_number: context.payload.workflow_run.pull_requests[0].number,
});
console.log('Merged PR');
}

View File

@@ -1,4 +1,4 @@
package flag package flag // import "go.unistack.org/micro-config-flag/v3"
import ( import (
"context" "context"
@@ -8,8 +8,8 @@ import (
"reflect" "reflect"
"time" "time"
"github.com/unistack-org/micro/v3/config" "go.unistack.org/micro/v3/config"
rutil "github.com/unistack-org/micro/v3/util/reflect" rutil "go.unistack.org/micro/v3/util/reflect"
) )
var ( var (
@@ -52,6 +52,7 @@ func (c *flagConfig) Init(opts ...config.Option) error {
fn, fv, fd := getFlagOpts(tf) fn, fv, fd := getFlagOpts(tf)
rcheck := true rcheck := true
switch sf.Value.Interface().(type) { switch sf.Value.Interface().(type) {
case time.Duration: case time.Duration:
err = c.flagDuration(sf.Value, fn, fv, fd) err = c.flagDuration(sf.Value, fn, fv, fd)
@@ -60,6 +61,7 @@ func (c *flagConfig) Init(opts ...config.Option) error {
err = c.flagTime(sf.Value, fn, fv, fd) err = c.flagTime(sf.Value, fn, fv, fd)
rcheck = false rcheck = false
} }
if err != nil { if err != nil {
c.opts.Logger.Errorf(c.opts.Context, "flag init error: %v", err) c.opts.Logger.Errorf(c.opts.Context, "flag init error: %v", err)
if !c.opts.AllowFail { if !c.opts.AllowFail {

View File

@@ -6,7 +6,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/unistack-org/micro/v3/config" "go.unistack.org/micro/v3/config"
) )
func TestLoad(t *testing.T) { func TestLoad(t *testing.T) {
@@ -30,11 +30,11 @@ func TestLoad(t *testing.T) {
c := NewConfig(config.Struct(cfg), TimeFormat(time.RFC822)) c := NewConfig(config.Struct(cfg), TimeFormat(time.RFC822))
if err := c.Init(); err != nil { if err := c.Init(); err != nil {
t.Fatal(err) t.Fatalf("init failed: %v", err)
} }
if err := c.Load(ctx); err != nil { if err := c.Load(ctx); err != nil {
t.Fatal(err) t.Fatalf("load failed: %v", err)
} }
if cfg.Broker != "5566:33" { if cfg.Broker != "5566:33" {
@@ -43,6 +43,4 @@ func TestLoad(t *testing.T) {
if tf := cfg.Time.Format(time.RFC822); tf != "02 Jan 06 14:32 MSK" { if tf := cfg.Time.Format(time.RFC822); tf != "02 Jan 06 14:32 MSK" {
t.Fatalf("parse time error: %v", cfg.Time) t.Fatalf("parse time error: %v", cfg.Time)
} }
t.Logf("cfg %#+v", cfg)
} }

4
go.mod
View File

@@ -1,5 +1,5 @@
module github.com/unistack-org/micro-config-flag/v3 module go.unistack.org/micro-config-flag/v3
go 1.16 go 1.16
require github.com/unistack-org/micro/v3 v3.7.6 require go.unistack.org/micro/v3 v3.8.7

8
go.sum
View File

@@ -7,10 +7,10 @@ github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU=
github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA=
github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
github.com/silas/dag v0.0.0-20210626123444-3804bac2d6d4/go.mod h1:7RTUFBdIRC9nZ7/3RyRNH1bdqIShrDejd1YbLwgPS+I= github.com/silas/dag v0.0.0-20210626123444-3804bac2d6d4/go.mod h1:7RTUFBdIRC9nZ7/3RyRNH1bdqIShrDejd1YbLwgPS+I=
github.com/unistack-org/micro-proto v0.0.9 h1:KrWLS4FUX7UAWNAilQf70uad6ZPf/0EudeddCXllRVc= go.unistack.org/micro-proto/v3 v3.1.0 h1:q39FwjFiRZn+Ux/tt+d3bJTmDtsQQWa+3SLYVo1vLfA=
github.com/unistack-org/micro-proto v0.0.9/go.mod h1:Cckwmzd89gvS7ThxzZp9kQR/EOdksFQcsTAtDDyKwrg= go.unistack.org/micro-proto/v3 v3.1.0/go.mod h1:DpRhYCBXlmSJ/AAXTmntvlh7kQkYU6eFvlmYAx4BQS8=
github.com/unistack-org/micro/v3 v3.7.6 h1:cobNkaicZR+8nbDWRUmX3/CSLh6ZNSytK2zWth4s4IM= go.unistack.org/micro/v3 v3.8.7 h1:k1zOpJ3uS8MxdhK8annRsa5J/LW7MpqPjwYuekW61wE=
github.com/unistack-org/micro/v3 v3.7.6/go.mod h1:Ke/8WJlNZi4ZYwL9HcsANAbQ66/HocTBEZM+od99/mM= go.unistack.org/micro/v3 v3.8.7/go.mod h1:KMMmOmbgo/D52/rCAbqeKbBsgEEbSKM69he54J3ZIuA=
golang.org/x/net v0.0.0-20210928044308-7d9f5e0b762b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210928044308-7d9f5e0b762b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=

View File

@@ -1,7 +1,7 @@
package flag package flag
import ( import (
"github.com/unistack-org/micro/v3/config" "go.unistack.org/micro/v3/config"
) )
type sliceDelimKey struct{} type sliceDelimKey struct{}