Skip to content

Commit b898f36

Browse files
mnsboevcursoragent
andauthored
Add priority field to distribution rules (#1612)
* Add priority field to distribution rules Co-authored-by: Cursor <cursoragent@cursor.com> * Bump jfrog-client-go to include RBv2 distribution priority. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 9a951b0 commit b898f36

4 files changed

Lines changed: 52 additions & 3 deletions

File tree

common/spec/distributionrules.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ type DistributionRule struct {
1616
SiteName string `json:"site_name,omitempty"`
1717
CityName string `json:"city_name,omitempty"`
1818
CountryCodes []string `json:"country_codes,omitempty"`
19+
Priority string `json:"priority,omitempty"`
1920
}
2021

2122
func (distributionRules *DistributionRules) Get(index int) *DistributionRule {
@@ -30,6 +31,7 @@ func (distributionRule *DistributionRule) ToDistributionCommonParams() *distribu
3031
SiteName: distributionRule.SiteName,
3132
CityName: distributionRule.CityName,
3233
CountryCodes: distributionRule.CountryCodes,
34+
Priority: distributionRule.Priority,
3335
}
3436
}
3537

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package spec
2+
3+
import (
4+
"os"
5+
"path/filepath"
6+
"testing"
7+
8+
"github.com/stretchr/testify/assert"
9+
"github.com/stretchr/testify/require"
10+
)
11+
12+
func TestToDistributionCommonParamsIncludesPriority(t *testing.T) {
13+
rule := DistributionRule{
14+
SiteName: "edge1",
15+
CityName: "Tel Aviv",
16+
CountryCodes: []string{"IL"},
17+
Priority: "high",
18+
}
19+
20+
params := rule.ToDistributionCommonParams()
21+
require.NotNil(t, params)
22+
assert.Equal(t, "edge1", params.SiteName)
23+
assert.Equal(t, "Tel Aviv", params.CityName)
24+
assert.Equal(t, []string{"IL"}, params.CountryCodes)
25+
assert.Equal(t, "high", params.Priority)
26+
}
27+
28+
func TestCreateDistributionRulesFromFileParsesPriority(t *testing.T) {
29+
dir := t.TempDir()
30+
path := filepath.Join(dir, "rules.json")
31+
content := `{
32+
"distribution_rules": [
33+
{
34+
"site_name": "edge*",
35+
"priority": "medium"
36+
}
37+
]
38+
}`
39+
require.NoError(t, os.WriteFile(path, []byte(content), 0o644))
40+
41+
rules, err := CreateDistributionRulesFromFile(path)
42+
require.NoError(t, err)
43+
require.Len(t, rules.DistributionRules, 1)
44+
assert.Equal(t, "edge*", rules.DistributionRules[0].SiteName)
45+
assert.Equal(t, "medium", rules.DistributionRules[0].Priority)
46+
assert.Equal(t, "medium", rules.DistributionRules[0].ToDistributionCommonParams().Priority)
47+
}

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ require (
1515
github.com/jedib0t/go-pretty/v6 v6.8.3
1616
github.com/jfrog/build-info-go v1.13.1-0.20260429070557-93b98034d295
1717
github.com/jfrog/gofrog v1.7.6
18-
github.com/jfrog/jfrog-client-go v1.55.1-0.20260813100550-0f2168d02558
18+
github.com/jfrog/jfrog-client-go v1.55.1-0.20260827094947-e7a90ebc8049
1919
github.com/magiconair/properties v1.18.11
2020
github.com/manifoldco/promptui v0.9.0
2121
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ github.com/jfrog/build-info-go v1.13.1-0.20260429070557-93b98034d295 h1:EH0h86Kw
101101
github.com/jfrog/build-info-go v1.13.1-0.20260429070557-93b98034d295/go.mod h1:+OCtMb22/D+u7Wne5lzkjJjaWr0LRZcHlDwTH86Mpwo=
102102
github.com/jfrog/gofrog v1.7.6 h1:QmfAiRzVyaI7JYGsB7cxfAJePAZTzFz0gRWZSE27c6s=
103103
github.com/jfrog/gofrog v1.7.6/go.mod h1:ntr1txqNOZtHplmaNd7rS4f8jpA5Apx8em70oYEe7+4=
104-
github.com/jfrog/jfrog-client-go v1.55.1-0.20260813100550-0f2168d02558 h1:/4ayHXxzgyZ9f66EqImCyZr2SKUpygU1P36sDVAlskM=
105-
github.com/jfrog/jfrog-client-go v1.55.1-0.20260813100550-0f2168d02558/go.mod h1:7B7eMRKuMhZ0rOdMItbJVpWjRUe1L//J3Jq+PgjiNxI=
104+
github.com/jfrog/jfrog-client-go v1.55.1-0.20260827094947-e7a90ebc8049 h1:eogwWAzZFir1suYEgZ4ZrYrch8fhWs7ma2dxv06p/z8=
105+
github.com/jfrog/jfrog-client-go v1.55.1-0.20260827094947-e7a90ebc8049/go.mod h1:7B7eMRKuMhZ0rOdMItbJVpWjRUe1L//J3Jq+PgjiNxI=
106106
github.com/kevinburke/ssh_config v1.6.0 h1:J1FBfmuVosPHf5GRdltRLhPJtJpTlMdKTBjRgTaQBFY=
107107
github.com/kevinburke/ssh_config v1.6.0/go.mod h1:q2RIzfka+BXARoNexmF9gkxEX7DmvbW9P4hIVx2Kg4M=
108108
github.com/klauspost/compress v1.4.1/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A=

0 commit comments

Comments
 (0)