Skip to content

Simple REST API with goa for use with PowerApps

Notifications You must be signed in to change notification settings

gbaeke/cryptoAPI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cryptoAPI

Simple example with goa plus build and run on Kubernetes

  • Install latest Go (had issue with 1.7; went away with 1.9)
  • Install goa with go get -u github.com/goadesign/goa/...
  • Modify the design/design.go file using the goa dsl
  • Code generation with: goagen bootstrap -d crypto\design
    • This creates a bunch of code plus a main.go & currencies.go
  • Modify currencies.go with your implementation
    • See currencies.go for a simple retrieval of cryptocurrency info from coinmarketcap.com
  • build with go build
    • static build for linux with CGO_ENABLED=0 GOOS=linux go build -a -ldflags '-extldflags "-static"' .
  • build Docker image with docker build -t yourtag .
  • push container to ACR
    • az acr login -name name-of-Azure-container-registry
    • docker push name-of-your-image
      • tag should be DNS-name-of-ACR/image-name
  • create Kubernetes deployment
    • kubectl apply -f crypto.yaml
  • expose service
    • kubectl expose deployment crypto --type LoadBalancer

Test the API

  • use curl
  • use the provided cli
    • in tool\crypto-cli do go build
    • run the cli with .\crypto-cli -H ip-or-host-of-API show currency currencies/neo

About

Simple REST API with goa for use with PowerApps

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages