Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 20 additions & 1 deletion config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ type Region string
const (
USRegion Region = "us"
EURegion Region = "eu"
JPRegion Region = "jp"
NoRegion Region = "none"
)

Expand Down Expand Up @@ -162,6 +163,15 @@ var USHaberdasherURL string
// EUHaberdasherURL is the base url for the Haberdasher service in the EU
var EUHaberdasherURL string

// JPUsageEndpoint is the haberdasher endpoint to which usage statistics are sent for JP accounts
var JPUsageEndpoint string

// JPAttachmentEndpoint is the haberdasher endpoint to which attachments are sent for JP accounts
var JPAttachmentEndpoint string

// JPHaberdasherURL is the base url for the Haberdasher service in JP
var JPHaberdasherURL string

// HaberdasherURL is the base url for the Haberdasher service
var HaberdasherURL string

Expand Down Expand Up @@ -231,7 +241,7 @@ func ParseFlags() {
flag.StringVar(&Flags.Include, "include", defaultString, "Include a file or directory (including subdirectories) in the nrdiag-output.zip. Limit 4GB. To upload the results to New Relic also use the '-a' flag.")

flag.StringVar(&Flags.Region, "r", defaultString, "alias for -region")
flag.StringVar(&Flags.Region, "region", defaultString, "The region your New Relic account is in. Accepted values: EU or US. Case insensitive. (Default: US)")
flag.StringVar(&Flags.Region, "region", defaultString, "The region your New Relic account is in. Accepted values: EU, JP, or US. Case insensitive. (Default: US)")

flag.BoolVar(&Flags.ListScripts, "list-scripts", false, "List available scripts")

Expand Down Expand Up @@ -276,6 +286,12 @@ func ParseFlags() {
AttachmentEndpoint = EUAttachmentEndpoint
}
HaberdasherURL = EUHaberdasherURL
case JPRegion:
UsageEndpoint = JPUsageEndpoint
if Flags.AttachmentEndpoint == "" {
AttachmentEndpoint = JPAttachmentEndpoint
}
HaberdasherURL = JPHaberdasherURL
default:
UsageEndpoint = USUsageEndpoint
if Flags.AttachmentEndpoint == "" {
Expand Down Expand Up @@ -373,6 +389,9 @@ func stringToRegion(region string) Region {
if r == "eu" {
return EURegion
}
if r == "jp" {
return JPRegion
}
if r == "us" {
return USRegion
}
Expand Down
30 changes: 30 additions & 0 deletions config/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,20 @@ func Test_stringToRegion(t *testing.T) {
},
want: EURegion,
},
{
name: "lower case JP string to region type",
args: args{
region: "jp",
},
want: JPRegion,
},
{
name: "upper case JP string to region type",
args: args{
region: "JP",
},
want: JPRegion,
},
{
name: "blank region string to region type",
args: args{
Expand Down Expand Up @@ -269,6 +283,22 @@ func Test_parseRegionFlagAndEnv(t *testing.T) {
},
want: EURegion,
},
{
name: "JP via flag",
args: args{
regionFromFlag: "jp",
regionFromEnv: "",
},
want: JPRegion,
},
{
name: "JP via env",
args: args{
regionFromFlag: "",
regionFromEnv: "jp",
},
want: JPRegion,
},
{
name: "Nothing provided - default to US",
args: args{
Expand Down
8 changes: 7 additions & 1 deletion scripts/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ if [ -z "$BUILD_NUMBER" ]; then
EU_USAGE_ENDPOINT="${STAGING_USAGE_ENDPOINT}"
EU_ATTACHMENT_ENDPOINT="${STAGING_ATTACHMENT_ENDPOINT}"
EU_HABERDASHER_URL="${STAGING_HABERDASHER_URL}"
JP_USAGE_ENDPOINT="${STAGING_USAGE_ENDPOINT}"
JP_ATTACHMENT_ENDPOINT="${STAGING_ATTACHMENT_ENDPOINT}"
JP_HABERDASHER_URL="${STAGING_HABERDASHER_URL}"
else
# Build number is present, send usage data to production endpoint
echo "send usage data to Haberdasher production"
Expand All @@ -31,12 +34,15 @@ else
EU_USAGE_ENDPOINT="${EU_USAGE_ENDPOINT}"
EU_ATTACHMENT_ENDPOINT="${EU_ATTACHMENT_ENDPOINT}"
EU_HABERDASHER_URL="${EU_HABERDASHER_URL}"
JP_USAGE_ENDPOINT="${JP_USAGE_ENDPOINT}"
JP_ATTACHMENT_ENDPOINT="${JP_ATTACHMENT_ENDPOINT}"
JP_HABERDASHER_URL="${JP_HABERDASHER_URL}"
fi

VERSION=$(cat releaseVersion.txt | awk -F'majorMinor=' '{printf$2}')

BUILD_TIMESTAMP=$(date -u '+%Y-%m-%d_%I:%M:%S%p')
LDFLAGS="-s -w -X ${CONFIG_PATH}.Version=${VERSION}.${VERSION_NUMBER} -X ${CONFIG_PATH}.BuildTimestamp=${BUILD_TIMESTAMP} -X ${CONFIG_PATH}.USUsageEndpoint=${US_USAGE_ENDPOINT} -X ${CONFIG_PATH}.USAttachmentEndpoint=${US_ATTACHMENT_ENDPOINT} -X ${CONFIG_PATH}.USHaberdasherURL=${US_HABERDASHER_URL} -X ${CONFIG_PATH}.EUUsageEndpoint=${EU_USAGE_ENDPOINT} -X ${CONFIG_PATH}.EUAttachmentEndpoint=${EU_ATTACHMENT_ENDPOINT} -X ${CONFIG_PATH}.EUHaberdasherURL=${EU_HABERDASHER_URL}"
LDFLAGS="-s -w -X ${CONFIG_PATH}.Version=${VERSION}.${VERSION_NUMBER} -X ${CONFIG_PATH}.BuildTimestamp=${BUILD_TIMESTAMP} -X ${CONFIG_PATH}.USUsageEndpoint=${US_USAGE_ENDPOINT} -X ${CONFIG_PATH}.USAttachmentEndpoint=${US_ATTACHMENT_ENDPOINT} -X ${CONFIG_PATH}.USHaberdasherURL=${US_HABERDASHER_URL} -X ${CONFIG_PATH}.EUUsageEndpoint=${EU_USAGE_ENDPOINT} -X ${CONFIG_PATH}.EUAttachmentEndpoint=${EU_ATTACHMENT_ENDPOINT} -X ${CONFIG_PATH}.EUHaberdasherURL=${EU_HABERDASHER_URL} -X ${CONFIG_PATH}.JPUsageEndpoint=${JP_USAGE_ENDPOINT} -X ${CONFIG_PATH}.JPAttachmentEndpoint=${JP_ATTACHMENT_ENDPOINT} -X ${CONFIG_PATH}.JPHaberdasherURL=${JP_HABERDASHER_URL}"

# Set version based on version.txt file and auto version number
echo "Build version is $VERSION.$VERSION_NUMBER"
Expand Down
Loading