algorand / algorand-sdk-testing

Testing framework for Algorand SDKs
MIT License
20 stars 35 forks source link

Github Actions instead of Circle for SDK Tests + Remove SDK Docker containers for testing #228

Open tzaffi opened 2 years ago

tzaffi commented 2 years ago

@tzaffi commented on Wed Aug 17 2022

Context

Currently the SDK's are running their tests on Circle. EG:

Following this recent issue https://github.com/algorand/algorand-sdk-testing/issues/221, each of the SDK's will be using the Sandbox for their algod/kmd/indexer/postgres environment. However, they are still each bringing up a docker container for the SDK themselves.

In principle, the Docker containers for each SDK is unnecessary, and each SDK can be built directly on the CI's VM and communicate directly with the Sandbox containers.

With this in mind, we have a good opportunity to migrate to github actions for the SDK's.

What are you looking for?

  1. Investigate the feasibility of moving off circle to github actions for the SDK's (the biggest question mark for me is the javascript SDK)
  2. Assuming step 1 shows that migrating to G.A. is feasible and advantageous, effect the migration.
  3. Possibly at the same time as step 2, remove the dockerization of each SDK from the build (but maintain the reliance on the Sandbox docker containers)

Why is it useful? We expect this to:


@winder commented on Wed Aug 17 2022

Does this remove the use of docker entirely?

One downside to this is that it becomes more difficult to run these tests locally for one-off tests. In the past, I have occasionally appreciated being able to run tests without having to set everything up. Or even for small changes, I would do all development through the docker test environment.


@michaeldiamant commented on Wed Aug 17 2022

Does this remove the use of docker entirely?

@winder No, I don't think so. Expanding briefly below though happy to discuss live to go deeper.


@winder commented on Wed Aug 17 2022

Thanks for the clarification. In the past I have used make docker-test in place of setting up a development environment locally. I've also found it useful as a santity check to see if there are issues due to software I have installed compared to the versions used by CI.

It's a good point though, we can probably use standard containers which CI has cached to speed things up.

Food for thought, maybe worth a live discussion.

tzaffi commented 2 years ago

@gmalouf - I've moved this issue here.