Adding system test files for Apache package#263
Conversation
4ad90b7 to
9af4f70
Compare
|
Depends on: elastic/elastic-package#99 and elastic/elastic-package#100. |
There was a problem hiding this comment.
In this case you assume that the image exists somewhere in the registry. Do you think we can add a build definition here?
I'd like to enable error and access logging to log files, but unfortunately it's not possible.
There was a problem hiding this comment.
@mtojek I was keeping this for later because it brings up a few questions related to the spec. Right now the spec for the _dev/deploy folder only allows specific files and folders under it. It does not allow for having any arbitrary additional files or folders.
Adding a build definition to the Docker Compose file and a Dockerfile to go with it is not a problem. We can add the Dockerfile to the spec file referenced above. However, sometimes a Dockerfile may reference other files, e.g. configuration files that must be copied into the image while building it. How do we account for this nicely in the spec? The simplest way would be to set additionalContents: true. More involved but slightly stricter would be to allow a specific sub-folder under _dev/deploy for arbitrary files. Do you have any thoughts?
There was a problem hiding this comment.
I'm afraid we have to enable this option (additionalContents: true) for whole deploy or defining a specific type of deploy: docker and then enable it. This way we are safe if we want to introduce another deployment model (terraform?)
There was a problem hiding this comment.
One thing we could do is expect a specific folder name under _dev/deploy corresponding to a supported deployment model. So a package could have this:
_dev/
deploy/
variants.yml (optional)
docker/
docker-compose.yml (required)
Dockerfile (optional)
(other, optional files as needed via `additionalContents: true`)
or:
_dev/
deploy/
terraform/
TBD
or:
_dev/
deploy/
SOME_NEW_MODEL/
TBD
And further we can probably enforce in the spec (in the future) that there must be exactly one sub-folder under _dev/deploy since a package should only specify one deployment model.
WDYT?
There was a problem hiding this comment.
I like this model, but let's first focus on the docker runtime as this is the only one we have :)
There was a problem hiding this comment.
Spec is adjusted in elastic/package-spec#49. Will do the dependency updates dance shortly.
|
Blocked on elastic/kibana#77613. |
28c7c06 to
3455671
Compare
|
BTW You can switch with development of system tests for Apache to elastic-package now and keep it there as a test package. Introducing potential fixes to elastic-package can be easier. |
|
Please adjust the PR accordingly to changes introduced in #280 . Main changes:
|
05cdb23 to
cf531d5
Compare
|
Updated this PR based on changes in elastic/elastic-package#111. Ready for your review now, @mtojek. Thanks! |
|
Pinging @elastic/integrations (Team:Integrations) |
a0bfd1f to
69a243e
Compare
|
I am super excited by this! Good job! @EricDavisX @ruflin FYI |
|
FYI, I'm working on a HOWTO guide as well. Hoping to land that PR in this repo this week 🤞. Will notify Elastic package developers via the mailing list once that is done. |
|
HOWTO guide for system testing packages with |

What does this PR do?
Adds system test files for the
apachepackage.Checklist
TODO
apache/accessdataset.apache/errordataset.apache/statusdataset.