as3-mock/

directory
v0.0.0-...-0cd9b86 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 14, 2024 License: Apache-2.0

README

= AS3 Mock
:toc: manual

AS3 Mock service for connectivity test in architecture.

== How to run from source code

[source, bash]
.*Run From Source Code*
----
go mod init github.com/kylinsoong/golang/as3-mock
go mod tidy
go run cmd/as3-mock/main.go --tls-certificate=$(pwd)/cert/certificate.crt --tls-private=$(pwd)/cert/private.key
----

[source, bash]
.*Build Source Code & Run locally*
----
go mod init github.com/kylinsoong/golang/as3-mock
go mod tidy
go build -o as3-mock -ldflags "-X main.version=1.0.0" cmd/as3-mock/*.go
./as3-mock --tls-certificate=$(pwd)/cert/certificate.crt --tls-private=$(pwd)/cert/private.key
----

== Build Docker Image

[source, bash]
.*Build docker image*
----
docker buildx create --use
docker buildx inspect --bootstrap
docker buildx build --platform linux/amd64,linux/arm64  -t cloudadc/as3-mock:0.5 --push -f Dockerfile .
----

[source, bash]
.*Run docker image on local*
----
docker run -it --rm -p 443:443 cloudadc/as3-mock:0.5
----

[source, bash]
.*Run on K8S*
----
kubectl apply -f as3-mock.yaml
----

== Current Supported API

=== /mgmt/tm/shared/licensing/registration

[source, bash]
----
% curl -s -k -u "admin:admin" -X GET https://127.0.0.1/mgmt/tm/shared/licensing/registration 
{
  "vendor": "F5 Networks, Inc.",
  "licensedDateTime": "2024-01-10T00:00:00-08:00",
  "licensedVersion": "15.1.10",
  "licenseEndDateTime": "2025-02-10T00:00:00-08:00",
  "licenseStartDateTime": "2024-01-09T00:00:00-08:00",
  "registrationKey": "KVPKO-EBYPF-UFQQG-WYBNP-TXRHIMF"
}
----

=== /mgmt/shared/appsvcs/info

[source, bash]
----
% curl -s -k -u "admin:admin" -X GET https://127.0.0.1/mgmt/shared/appsvcs/info
{
  "version": "3.36.1",
  "release": "1",
  "schemaCurrent": "3.36.0",
  "schemaMinimum": "3.0.0"
}
---- 

=== mgmt/shared/appsvcs/declare/{partition}

[source, bash]
----
% curl -s -k -u "admin:admin" -X POST -H "Content-Type: application/json" -d @$(pwd)/emptyAS3Declaration.json https://127.0.0.1/mgmt/shared/appsvcs/declare/cistest002 
{
  "declaration": {
    "class": "ADC",
    "updateMode": "selective"
  },
  "results": [
    {
      "code": 200,
      "host": "localhost",
      "lineCount": 30,
      "message": "success",
      "runTime": 100,
      "tenant": "cistest002"
    }
  ]
}
----

=== /mgmt/shared/authn/login

[source, bash]
----
% curl -sk https://127.0.0.1/mgmt/shared/authn/login -X POST -H "Content-Type: application/json"  -d '{"username":"admin", "password":"F5demo@666", "loginProviderName":"tmos"}'
{
  "username": "admin",
  "loginReference": {
    "link": ""
  },
  "loginProviderName": "tmos",
  "token": {
    "token": "QLLJFAT5DHOGEGE2XCAX6ZBEKA",
    "name": "QLLJFAT5DHOGEGE2XCAX6ZBEKA",
    "userName": "admin",
    "authProviderName": "tmos",
    "user": {
      "link": "https://localhost/mgmt/shared/authz/users/admin"
    },
    "timeout": 1200,
    "startTime": "2024-04-29T19:17:15.460+0800",
    "address": "10.2.10.240",
    "partition": "[All]",
    "generation": 1,
    "lastUpdateMicros": 1714389435460230,
    "expirationMicros": 1814390635460000,
    "kind": "shared:authz:tokens:authtokenitemstate",
    "selfLink": "https://localhost/mgmt/shared/authz/tokens/QLLJFAT5DHOGEGE2XCAX6ZBEKA"
  },
  "generation": 0,
  "lastUpdateMicros": 0
}
----

=== /mgmt/tm/sys/

[source, bash]
----
% curl -sk https://127.0.0.1/mgmt/tm/sys/
{
  "kind": "tm:sys:syscollectionstate",
  "selfLink": "https://localhost/mgmt/tm/sys?ver=15.1.10",
  "items": [
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/application?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/crypto?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/daemon-log-settings?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/diags?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/disk?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/dynad?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/ecm?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/file?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/fpga?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/icall?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/log-config?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/pfman?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/sflow?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/software?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/turboflex?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/url-db?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/aom?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/autoscale-group?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/cluster?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/config?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/core?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/daemon-ha?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/datastor?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/db?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/dns?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/feature-module?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/folder?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/global-settings?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/ha-group?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/httpd?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/icontrol-soap?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/internal-proxy?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/log-rotate?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/management-dhcp?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/management-ip?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/management-ovsdb?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/management-proxy-config?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/management-route?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/ntp?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/outbound-smtp?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/provision?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/scriptd?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/service?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/smtp-server?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/snmp?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/sshd?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/state-mirroring?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/syslog?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/telemd?ver=15.1.10"
      }
    },
    {
      "reference": {
        "link": "https://localhost/mgmt/tm/sys/ucs?ver=15.1.10"
      }
    }
  ]
}
----

Directories

Path Synopsis
cmd
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL