Skip to content

Commit

Permalink
Merge pull request #110 from mysteriumnetwork/remove-tags
Browse files Browse the repository at this point in the history
Remove unused tags from discovery
  • Loading branch information
soffokl authored Jul 15, 2024
2 parents 56cd41d + 7c9c514 commit fc8bd99
Show file tree
Hide file tree
Showing 15 changed files with 61 additions and 226 deletions.
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
### Features
* Fetch MYST prices from the public API
* Create prices for nodes based on the load and multiplier in the countries
* Listen for proposals from NATS Broker and enhance them with quality metrics and tags
* Listen for proposals from NATS Broker and enhance them with quality metrics
* Run proposal expiration job
* Update price config by Universe Admin
* Use Postgres to save proposals, configs, and country multipliers
Expand All @@ -27,7 +27,6 @@ MYSTERIUM_LOG_MODE=json
PORT=8080
QUALITY_ORACLE_URL=https://testnet3-quality.mysterium.network
QUALITY_CACHE_TTL=20s
BADGER_ADDRESS=https://testnet3-badger.mysterium.network
BROKER_URL=nats://testnet3-broker.mysterium.network
UNIVERSE_JWT_SECRET=Some_Secret
REDIS_ADDRESS=redis:6379
Expand Down Expand Up @@ -63,7 +62,6 @@ COINRANKING_TOKEN=Some_Token
#### Code structure

* `/config` - [Discovery] config parser. Env params
* `/tags` - [Discovery] Tags proposals enhancer for SuperProxy
* `/docs` - [Discovery] Auto generated Swagger for REST API
* `/e2e` - e2e tests
* `/health` - [Discovery] health checker REST API
Expand Down
4 changes: 1 addition & 3 deletions cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import (
"github.com/mysteriumnetwork/discovery/proposal"
"github.com/mysteriumnetwork/discovery/quality"
"github.com/mysteriumnetwork/discovery/quality/oracleapi"
"github.com/mysteriumnetwork/discovery/tags"
"github.com/mysteriumnetwork/go-rest/apierror"
mlog "github.com/mysteriumnetwork/logger"
)
Expand Down Expand Up @@ -62,8 +61,7 @@ func main() {
pprof.RouteRegister(devGroup, "pprof")
}

tagEnhancer := tags.NewEnhancer(tags.NewApi(cfg.BadgerAddress.String()))
proposalRepo := proposal.NewRepository([]proposal.Enhancer{tagEnhancer}, cfg.ProposalsHardLimitPerCountry, cfg.ProposalsSoftLimitPerCountry, cfg.CompatibilityMin)
proposalRepo := proposal.NewRepository(cfg.ProposalsHardLimitPerCountry, cfg.ProposalsSoftLimitPerCountry, cfg.CompatibilityMin)
qualityOracleAPI := oracleapi.New(cfg.QualityOracleURL.String())
qualityService := quality.NewService(qualityOracleAPI, cfg.QualityCacheTTL)
proposalService := proposal.NewService(proposalRepo, qualityService)
Expand Down
7 changes: 0 additions & 7 deletions config/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,6 @@ type Options struct {
RedisPass string
RedisDB int

BadgerAddress url.URL

LocationAddress url.URL
LocationUser string
LocationPass string
Expand Down Expand Up @@ -74,10 +72,6 @@ func ReadDiscovery() (*Options, error) {
if err != nil {
return nil, err
}
badgerAddress, err := RequiredEnvURL("BADGER_ADDRESS")
if err != nil {
return nil, err
}

compatibility, err := OptionalEnvInt("COMPATIBILITY_MIN", "0")
if err != nil {
Expand Down Expand Up @@ -114,7 +108,6 @@ func ReadDiscovery() (*Options, error) {
QualityOracleURL: *qualityOracleURL,
QualityCacheTTL: *qualityCacheTTL,
BrokerURL: *brokerURL,
BadgerAddress: *badgerAddress,
LocationAddress: *locationAddress,
LocationUser: locationUser,
LocationPass: locationPass,
Expand Down
1 change: 0 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ services:
- PORT=8080
- QUALITY_ORACLE_URL=https://quality.mysterium.network
- QUALITY_CACHE_TTL=20s
- BADGER_ADDRESS=https://badger.mysterium.network
- BROKER_URL=nats://broker.mysterium.network
- UNIVERSE_JWT_SECRET=suchsecret
- REDIS_ADDRESS=redis:6379
Expand Down
7 changes: 4 additions & 3 deletions e2e/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@ import (
v3 "github.com/mysteriumnetwork/discovery/proposal/v3"
)

var DiscoveryAPI = newDiscoveryAPI(DiscoveryAPIurl)
var PricerAPI = newPricingAPI(PricerAPIUrl)
var (
DiscoveryAPI = newDiscoveryAPI(DiscoveryAPIurl)
PricerAPI = newPricingAPI(PricerAPIUrl)
)

func newDiscoveryAPI(basePath string) *discoveryAPI {
return &discoveryAPI{
Expand Down Expand Up @@ -47,7 +49,6 @@ type Query struct {
CompatibilityMin int `url:"compatibility_min"`
CompatibilityMax int `url:"compatibility_max"`
QualityMin float64 `url:"quality_min"`
Tags string `url:"tags"`
IncludeMonitoringFailed bool `url:"include_monitoring_failed"`
NATCompatibility string `url:"nat_compatibility"`
}
Expand Down
2 changes: 0 additions & 2 deletions e2e/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ services:
- QUALITY_ORACLE_URL=http://wiremock:8080
- QUALITY_CACHE_TTL=1s
- PROPOSALS_CACHE_TTL=0s
- BADGER_ADDRESS=http://wiremock:8080
- BROKER_URL=nats://broker
- LOCATION_ADDRESS=http://wiremock:8080
- UNIVERSE_JWT_SECRET=suchsecret
Expand All @@ -35,7 +34,6 @@ services:
- PORT=8081
- QUALITY_ORACLE_URL=http://wiremock:8004
- QUALITY_CACHE_TTL=20s
- BADGER_ADDRESS=http://wiremock:8004
- SENTINEL_URL=http://wiremock:8004
- BROKER_URL=nats://broker.mysterium.network
- UNIVERSE_JWT_SECRET=suchsecret
Expand Down
15 changes: 0 additions & 15 deletions e2e/wiremock/mappings/tag.json

This file was deleted.

1 change: 0 additions & 1 deletion magefile.go
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,6 @@ func Run() error {
"COINRANKING_TOKEN": "",
"UNIVERSE_JWT_SECRET": "",
"REDIS_ADDRESS": "localhost:6379",
"BADGER_ADDRESS": "https://badger.mysterium.network",
"LOCATION_ADDRESS": "https://location.mysterium.network/api/v1/location",
"SENTINEL_URL": "https://sentinel.mysterium.network",
}
Expand Down
1 change: 0 additions & 1 deletion proposal/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,6 @@ func (a *API) proposalArgs(c *gin.Context) ListOpts {
accessPolicy: c.Query("access_policy"),
accessPolicySource: c.Query("access_policy_source"),
ipType: c.Query("ip_type"),
tags: c.Query("tags"),
}

pids, _ := c.GetQueryArray("provider_id")
Expand Down
22 changes: 1 addition & 21 deletions proposal/inmemory.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ package proposal

import (
"errors"
"strings"
"sync"
"time"

Expand All @@ -25,7 +24,6 @@ type Repository struct {
expirationDuration time.Duration
mu sync.RWMutex
proposals map[string]record
enhancers []Enhancer
proposalsHardLimitPerCountry int
proposalsSoftLimitPerCountry int
compatibilityMin int
Expand All @@ -40,7 +38,6 @@ type repoListOpts struct {
accessPolicySource string
compatibilityMin int
compatibilityMax int
tags string
}

type repoMetadataOpts struct {
Expand All @@ -52,12 +49,11 @@ type record struct {
expiresAt time.Time
}

func NewRepository(enhancers []Enhancer, proposalsHardLimitPerCountry, proposalsSoftLimitPerCountry, compatibilityMin int) *Repository {
func NewRepository(proposalsHardLimitPerCountry, proposalsSoftLimitPerCountry, compatibilityMin int) *Repository {
return &Repository{
expirationDuration: 3*time.Minute + 10*time.Second,
expirationJobDelay: 20 * time.Second,
proposals: make(map[string]record),
enhancers: enhancers,
proposalsHardLimitPerCountry: proposalsHardLimitPerCountry,
proposalsSoftLimitPerCountry: proposalsSoftLimitPerCountry,
compatibilityMin: compatibilityMin,
Expand Down Expand Up @@ -271,21 +267,5 @@ func match(p v3.Proposal, opts repoListOpts) bool {
}
}

if opts.tags != "" {
found := false

for _, ot := range strings.Split(opts.tags, ",") {
for _, pt := range p.Tags {
if ot == pt {
found = true
}
}
}

if !found {
return false
}
}

return true
}
4 changes: 0 additions & 4 deletions proposal/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ type ListOpts struct {
compatibilityMax int
bandwidthMin float64
qualityMin float64
tags string
includeMonitoringFailed bool
natCompatibility string
presetID int
Expand All @@ -55,7 +54,6 @@ func (s *Service) List(opts ListOpts, limited bool) []v3.Proposal {
accessPolicySource: opts.accessPolicySource,
compatibilityMin: opts.compatibilityMin,
compatibilityMax: opts.compatibilityMax,
tags: opts.tags,
}, limited)

or := &metrics.OracleResponses{}
Expand Down Expand Up @@ -88,7 +86,6 @@ func (s *Service) ListCountriesNumbers(opts ListOpts, limited bool) map[string]i
accessPolicySource: opts.accessPolicySource,
compatibilityMin: opts.compatibilityMin,
compatibilityMax: opts.compatibilityMax,
tags: opts.tags,
})
}

Expand All @@ -101,7 +98,6 @@ func (s *Service) ListCountriesNumbers(opts ListOpts, limited bool) map[string]i
accessPolicySource: opts.accessPolicySource,
compatibilityMin: opts.compatibilityMin,
compatibilityMax: opts.compatibilityMax,
tags: opts.tags,
}, limited)

or := &metrics.OracleResponses{}
Expand Down
1 change: 0 additions & 1 deletion proposal/v3/proposal.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ type Proposal struct {
Contacts []Contact `json:"contacts"`
AccessPolicies []AccessPolicy `json:"access_policies,omitempty"`
Quality Quality `json:"quality"`
Tags []string `json:"tags,omitempty"`
}

func NewProposal(providerID, serviceType string) *Proposal {
Expand Down
Loading

0 comments on commit fc8bd99

Please sign in to comment.