Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tests: Build and run examples as end to end tests (#39)
Motivation ---------- For each pull request, the CI runs a number of test suites: * Soundness: these are static checks of formatting, language and so on * Unit tests: these check individual library functions in isolation * Integration tests: these check individual registry library functions against a test registry instance * Swift 6 Language Mode: this checks that the project compiles with Swift 6 These are all unit or integration tests; there are no complete system tests to exercise the `build-container-image` plugin, or that the examples work. It is difficult to test the `build-container-image` plugin in XCTest, but with GitHub Actions we can work through all the steps of building and deploying one of the examples, including using a Swift SDK. This will cover all the major parts of the project and ensure that the examples continue to work. Modifications ------------- This commit adds a new GitHub Actions test which: * Installs the static Linux SDK * Uses it to build an example service * Publishes the example image to a registry running in a service container * Deploys the image using Docker provided by the GitHub Actions runner * Verifies that the example service works Result ------ An end-to-end build and deployment of one of the examples will be attempted for every pull request. Test Plan --------- This commit adds a new test, which passes. All existing tests continue to pass.
- Loading branch information