Skip to content

Automate zilla develop-SNAPSHOT acceptance tests for zilla-examples scenarios #1434

@vordimous

Description

@vordimous

Describe the desired outcome from the user's perspective
As a zilla developer, I want to have confidence that my changes have no negative impact on zilla-examples scenarios.

Acceptance criteria

  • Each zilla-examples scenario is automated via GitHub Actions, following the steps in each README
  • The develop-SNAPSHOT version of zilla is used for automated testing by default
  • A local develop-SNAPSHOT build of zilla is created and cached via GitHub Actions as needed
  • If any of the steps in the README do not behave as expected, then the GitHub Actions workflow fails
  • Enough information is retained when the GitHub Actions workflow fails to diagnose the failure
  • Ideally, the same tools recommended by the README are used by the workflow to verify correctness
  • The workflow may be triggered by a timer, or manually

Additional context
See potentially helpful kind tool for k8s automation.

Running GH actions can be executed in a container. The container needed for the GH action can be pulled locally to test any action steps.

sparse-checkout can only clone certain folders or patterns of folders.

Export results to the $GITHUB_OUTPUT var.

Use path-specific action triggers and global env vars to make jobs and tasks more generic.

on:
  push:
    paths:
      - "path/to/example/**/*"

env:
  EXAMPLE_PATH: path/to/example

Tasks

  • Add a GH action to build the head of develop and run example tests #1263
  • automate amqp.reflect
  • automate asyncapi.http.kafka.proxy
  • automate asyncapi.mqtt.kafka.proxy
  • automate asyncapi.mqtt.proxy
  • automate asyncapi.sse.kafka.proxy
  • automate asyncapi.sse.proxy
  • automate grpc.echo
  • automate grpc.kafka.echo
  • automate grpc.kafka.fanout
  • automate grpc.kafka.proxy
  • automate grpc.proxy
  • automate http.filesystem
  • automate http.json.schema
  • automate http.kafka.async
  • automate http.kafka.cache
  • automate http.kafka.crud
  • automate http.kafka.oneway
  • automate http.kafka.proto.json
  • automate http.kafka.proto.oneway
  • automate http.kafka.sync
  • automate http.proxy
  • automate http.proxy.jwt
  • automate mqtt.kafka.proxy
  • automate mqtt.proxy.jwt
  • automate openapi.asyncapi.kakfa.proxy
  • automate openapi.proxy
  • Automate openapi.proxy scenario acceptance tests zilla-examples#124
  • automate sse.kafka.fanout
  • automate sse.proxy.jwt
  • automate tcp.echo
  • automate tcp.reflect
  • Automate tls.echo scenario acceptance tests zilla-examples#125
  • automate tls.reflect
  • automate ws.echo
  • automate ws.reflect

Metadata

Metadata

Assignees

Labels

devxEffects the Developer ExperiencestoryFeature description from user's perspective

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions