Merge branch 'develop' into feature_v0.10.0_serverPings

This commit is contained in:
Matthew R Kasun 2022-01-27 06:45:52 -05:00
commit 76ae673363
3 changed files with 15 additions and 9 deletions

View file

@ -13,6 +13,7 @@ func TestCreateEgressGateway(t *testing.T) {
var gateway models.EgressGatewayRequest
gateway.Interface = "eth0"
gateway.Ranges = []string{"10.100.100.0/24"}
gateway.NetID = "skynet"
database.InitializeDatabase()
deleteAllNetworks()
createNet()
@ -21,9 +22,17 @@ func TestCreateEgressGateway(t *testing.T) {
assert.Equal(t, models.Node{}, node)
assert.EqualError(t, err, "could not find any records")
})
t.Run("Non-linux node", func(t *testing.T) {
createnode := models.Node{PublicKey: "DM5qhLAE20PG9BbfBCger+Ac9D2NDOwCtY1rbYDLf34=", Name: "testnode", Endpoint: "10.0.0.1", MacAddress: "01:02:03:04:05:06", Password: "password", Network: "skynet", OS: "freebsd"}
err := logic.CreateNode(&createnode)
assert.Nil(t, err)
gateway.NodeID = createnode.ID
node, err := logic.CreateEgressGateway(gateway)
assert.Equal(t, models.Node{}, node)
assert.EqualError(t, err, "freebsd is unsupported for egress gateways")
})
t.Run("Success", func(t *testing.T) {
testnode := createTestNode()
gateway.NetID = "skynet"
gateway.NodeID = testnode.ID
node, err := logic.CreateEgressGateway(gateway)
@ -138,7 +147,7 @@ func deleteAllNodes() {
}
func createTestNode() *models.Node {
createnode := models.Node{PublicKey: "DM5qhLAE20PG9BbfBCger+Ac9D2NDOwCtY1rbYDLf34=", Name: "testnode", Endpoint: "10.0.0.1", MacAddress: "01:02:03:04:05:06", Password: "password", Network: "skynet"}
createnode := models.Node{PublicKey: "DM5qhLAE20PG9BbfBCger+Ac9D2NDOwCtY1rbYDLf34=", Name: "testnode", Endpoint: "10.0.0.1", MacAddress: "01:02:03:04:05:06", Password: "password", Network: "skynet", OS: "linux"}
logic.CreateNode(&createnode)
return &createnode
}

View file

@ -14,12 +14,12 @@ import (
// CreateEgressGateway - creates an egress gateway
func CreateEgressGateway(gateway models.EgressGatewayRequest) (models.Node, error) {
node, err := GetNodeByID(gateway.NodeID)
if node.OS == "windows" || node.OS == "macos" { // add in darwin later
return models.Node{}, errors.New(node.OS + " is unsupported for egress gateways")
}
if err != nil {
return models.Node{}, err
}
if node.OS != "linux" { // add in darwin later
return models.Node{}, errors.New(node.OS + " is unsupported for egress gateways")
}
err = ValidateEgressGateway(gateway)
if err != nil {
return models.Node{}, err
@ -113,7 +113,7 @@ func DeleteEgressGateway(network, nodeid string) (models.Node, error) {
func CreateIngressGateway(netid string, nodeid string) (models.Node, error) {
node, err := GetNodeByID(nodeid)
if node.OS == "windows" || node.OS == "darwin" { // add in darwin later
if node.OS != "linux" { // add in darwin later
return models.Node{}, errors.New(node.OS + " is unsupported for ingress gateways")
}

View file

@ -16,9 +16,6 @@ func CreateRelay(relay models.RelayRequest) (models.Node, error) {
if err != nil {
return models.Node{}, err
}
if node.OS == "macos" { // add in darwin later
return models.Node{}, errors.New(node.OS + " is unsupported for relay")
}
err = ValidateRelay(relay)
if err != nil {