tree: 4d0b6e6fe685ef2f8bc41c9239d9bd0696377745 [path history] [tgz]
  1. acls/
  2. bbtaskbackend/
  3. botsrv/
  4. bq/
  5. cfg/
  6. cmd/
  7. hmactoken/
  8. internals/
  9. metrics/
  10. model/
  11. notifications/
  12. pubsub/
  13. rbe/
  14. rpcs/
  15. testing/
  16. util/
  17. validate/
  18. README.md
swarming/server/README.md

Swarming server Go code

To deploy from a local checkout:

gae.py upload -A chromium-swarm-dev default-go

To run locally using fake bots and tasks (but with real Datastore and real RBE):

# Terminal 1: launch the server locally and keep it running.
cd server/cmd/default
go run main.go \
  -cloud-project chromium-swarm-dev \
  -shared-hmac-secret devsecret://aaaa \
  -expose-integration-mocks

# Terminal 2: launch a fake bot and keep it running.
cd server/testing/fakebot
go run main.go -bot-id fake-bot-1 -pool "${USER}-local-test"

# Terminal 3: launch a task and see it handled by the fake bot.
cd server/testing/fakesubmit
go run main.go -pool "${USER}-local-test"

Note that these tests hit real RBE instance (by default default_instance in chromium-swarm-dev project), so they may theoretically interfere with other similar tests running on other machines or even with real chromium-swarm-dev RBE traffic. pool dimension can be used to namespace them.