diff options
| author | Philip Kuryloski <kuryloskip@vmware.com> | 2021-03-09 11:31:19 +0100 |
|---|---|---|
| committer | Philip Kuryloski <kuryloskip@vmware.com> | 2021-03-09 11:31:19 +0100 |
| commit | 8bbdf3f818e5cc84d4c4fdfe2eaf32556d4fdb72 (patch) | |
| tree | 25dcc92babb7802f563473c82e6074d6df04eee0 | |
| parent | 55137107e09a45d43026c1ba41ad79b35621d077 (diff) | |
| download | rabbitmq-server-git-8bbdf3f818e5cc84d4c4fdfe2eaf32556d4fdb72.tar.gz | |
WIP: GitHub Actions without docker images 6
| -rw-r--r-- | .github/workflows/test-erlang-otp-23.1.yaml | 202 | ||||
| -rw-r--r-- | .github/workflows/test-erlang-otp-git.yaml | 202 | ||||
| -rw-r--r-- | workflow_sources/test/ct.lib.yml | 14 | ||||
| -rw-r--r-- | workflow_sources/test/dep.star | 3 | ||||
| -rw-r--r-- | workflow_sources/test/finish.lib.yml | 15 | ||||
| -rw-r--r-- | workflow_sources/test/util.star | 4 |
6 files changed, 211 insertions, 229 deletions
diff --git a/.github/workflows/test-erlang-otp-23.1.yaml b/.github/workflows/test-erlang-otp-23.1.yaml index 591796165b..14461e207b 100644 --- a/.github/workflows/test-erlang-otp-23.1.yaml +++ b/.github/workflows/test-erlang-otp-23.1.yaml @@ -8520,111 +8520,6 @@ jobs: with: name: rabbit-ct-vhost-logs-mixed-v3.8.9 path: deps/rabbit/*-ct-logs-*.tar.xz - rabbit: - name: rabbit - needs: - - rabbit-checks - - rabbit-ct-amqqueue_backward_compatibility - - rabbit-ct-backing_queue - - rabbit-ct-channel_interceptor - - rabbit-ct-channel_operation_timeout - - rabbit-ct-cluster - - rabbit-ct-cluster_rename - - rabbit-ct-clustering_management - - rabbit-ct-config_schema - - rabbit-ct-confirms_rejects - - rabbit-ct-consumer_timeout - - rabbit-ct-crashing_queues - - rabbit-ct-dead_lettering - - rabbit-ct-definition_import - - rabbit-ct-disconnect_detected_during_alarm - - rabbit-ct-dynamic_ha - - rabbit-ct-dynamic_qq - - rabbit-ct-eager_sync - - rabbit-ct-feature_flags - - rabbit-ct-lazy_queue - - rabbit-ct-list_consumers_sanity_check - - rabbit-ct-list_queues_online_and_offline - - rabbit-ct-maintenance_mode - - rabbit-ct-many_node_ha - - rabbit-ct-message_size_limit - - rabbit-ct-metrics - - rabbit-ct-mirrored_supervisor - - rabbit-ct-msg_store - - rabbit-ct-peer_discovery_classic_config - - rabbit-ct-peer_discovery_dns - - rabbit-ct-per_user_connection_channel_limit - - rabbit-ct-per_user_connection_channel_limit_partitions - - rabbit-ct-per_user_connection_channel_tracking - - rabbit-ct-per_user_connection_tracking - - rabbit-ct-per_vhost_connection_limit - - rabbit-ct-per_vhost_connection_limit_partitions - - rabbit-ct-per_vhost_msg_store - - rabbit-ct-per_vhost_queue_limit - - rabbit-ct-policy - - rabbit-ct-priority_queue - - rabbit-ct-priority_queue_recovery - - rabbit-ct-product_info - - rabbit-ct-proxy_protocol - - rabbit-ct-publisher_confirms_parallel - - rabbit-ct-queue_length_limits - - rabbit-ct-queue_master_location - - rabbit-ct-queue_parallel - - rabbit-ct-queue_type - - rabbit-ct-quorum_queue - - rabbit-ct-rabbit_confirms - - rabbit-ct-rabbit_core_metrics_gc - - rabbit-ct-rabbit_fifo - - rabbit-ct-rabbit_fifo_int - - rabbit-ct-rabbit_fifo_prop - - rabbit-ct-rabbit_fifo_v0 - - rabbit-ct-rabbit_msg_record - - rabbit-ct-rabbit_stream_queue - - rabbit-ct-rabbitmq_queues_cli_integration - - rabbit-ct-rabbitmqctl_integration - - rabbit-ct-rabbitmqctl_shutdown - - rabbit-ct-signal_handling - - rabbit-ct-simple_ha - - rabbit-ct-single_active_consumer - - rabbit-ct-sync_detection - - rabbit-ct-term_to_binary_compat_prop - - rabbit-ct-topic_permission - - rabbit-ct-unit_access_control - - rabbit-ct-unit_access_control_authn_authz_context_propagation - - rabbit-ct-unit_access_control_credential_validation - - rabbit-ct-unit_amqp091_content_framing - - rabbit-ct-unit_amqp091_server_properties - - rabbit-ct-unit_app_management - - rabbit-ct-unit_cluster_formation_locking_mocks - - rabbit-ct-unit_collections - - rabbit-ct-unit_config_value_encryption - - rabbit-ct-unit_connection_tracking - - rabbit-ct-unit_credit_flow - - rabbit-ct-unit_disk_monitor - - rabbit-ct-unit_disk_monitor_mocks - - rabbit-ct-unit_file_handle_cache - - rabbit-ct-unit_gen_server2 - - rabbit-ct-unit_gm - - rabbit-ct-unit_log_config - - rabbit-ct-unit_log_management - - rabbit-ct-unit_operator_policy - - rabbit-ct-unit_pg_local - - rabbit-ct-unit_plugin_directories - - rabbit-ct-unit_plugin_versioning - - rabbit-ct-unit_policy_validators - - rabbit-ct-unit_priority_queue - - rabbit-ct-unit_queue_consumers - - rabbit-ct-unit_stats_and_metrics - - rabbit-ct-unit_supervisor2 - - rabbit-ct-unit_vm_memory_monitor - - rabbit-ct-upgrade_preparation - - rabbit-ct-vhost - runs-on: ubuntu-18.04 - if: '!contains(github.event.head_commit.message, ''[ci skip]'') && (success() || failure())' - steps: - - name: FAN IN rabbit SUITES - run: | - echo "Success" amqp_client: name: amqp_client needs: @@ -9977,7 +9872,102 @@ jobs: - xref - dialyze - rabbit_common - - rabbit + - rabbit-checks + - rabbit-ct-amqqueue_backward_compatibility + - rabbit-ct-backing_queue + - rabbit-ct-channel_interceptor + - rabbit-ct-channel_operation_timeout + - rabbit-ct-cluster + - rabbit-ct-cluster_rename + - rabbit-ct-clustering_management + - rabbit-ct-config_schema + - rabbit-ct-confirms_rejects + - rabbit-ct-consumer_timeout + - rabbit-ct-crashing_queues + - rabbit-ct-dead_lettering + - rabbit-ct-definition_import + - rabbit-ct-disconnect_detected_during_alarm + - rabbit-ct-dynamic_ha + - rabbit-ct-dynamic_qq + - rabbit-ct-eager_sync + - rabbit-ct-feature_flags + - rabbit-ct-lazy_queue + - rabbit-ct-list_consumers_sanity_check + - rabbit-ct-list_queues_online_and_offline + - rabbit-ct-maintenance_mode + - rabbit-ct-many_node_ha + - rabbit-ct-message_size_limit + - rabbit-ct-metrics + - rabbit-ct-mirrored_supervisor + - rabbit-ct-msg_store + - rabbit-ct-peer_discovery_classic_config + - rabbit-ct-peer_discovery_dns + - rabbit-ct-per_user_connection_channel_limit + - rabbit-ct-per_user_connection_channel_limit_partitions + - rabbit-ct-per_user_connection_channel_tracking + - rabbit-ct-per_user_connection_tracking + - rabbit-ct-per_vhost_connection_limit + - rabbit-ct-per_vhost_connection_limit_partitions + - rabbit-ct-per_vhost_msg_store + - rabbit-ct-per_vhost_queue_limit + - rabbit-ct-policy + - rabbit-ct-priority_queue + - rabbit-ct-priority_queue_recovery + - rabbit-ct-product_info + - rabbit-ct-proxy_protocol + - rabbit-ct-publisher_confirms_parallel + - rabbit-ct-queue_length_limits + - rabbit-ct-queue_master_location + - rabbit-ct-queue_parallel + - rabbit-ct-queue_type + - rabbit-ct-quorum_queue + - rabbit-ct-rabbit_confirms + - rabbit-ct-rabbit_core_metrics_gc + - rabbit-ct-rabbit_fifo + - rabbit-ct-rabbit_fifo_int + - rabbit-ct-rabbit_fifo_prop + - rabbit-ct-rabbit_fifo_v0 + - rabbit-ct-rabbit_msg_record + - rabbit-ct-rabbit_stream_queue + - rabbit-ct-rabbitmq_queues_cli_integration + - rabbit-ct-rabbitmqctl_integration + - rabbit-ct-rabbitmqctl_shutdown + - rabbit-ct-signal_handling + - rabbit-ct-simple_ha + - rabbit-ct-single_active_consumer + - rabbit-ct-sync_detection + - rabbit-ct-term_to_binary_compat_prop + - rabbit-ct-topic_permission + - rabbit-ct-unit_access_control + - rabbit-ct-unit_access_control_authn_authz_context_propagation + - rabbit-ct-unit_access_control_credential_validation + - rabbit-ct-unit_amqp091_content_framing + - rabbit-ct-unit_amqp091_server_properties + - rabbit-ct-unit_app_management + - rabbit-ct-unit_cluster_formation_locking_mocks + - rabbit-ct-unit_collections + - rabbit-ct-unit_config_value_encryption + - rabbit-ct-unit_connection_tracking + - rabbit-ct-unit_credit_flow + - rabbit-ct-unit_disk_monitor + - rabbit-ct-unit_disk_monitor_mocks + - rabbit-ct-unit_file_handle_cache + - rabbit-ct-unit_gen_server2 + - rabbit-ct-unit_gm + - rabbit-ct-unit_log_config + - rabbit-ct-unit_log_management + - rabbit-ct-unit_operator_policy + - rabbit-ct-unit_pg_local + - rabbit-ct-unit_plugin_directories + - rabbit-ct-unit_plugin_versioning + - rabbit-ct-unit_policy_validators + - rabbit-ct-unit_priority_queue + - rabbit-ct-unit_queue_consumers + - rabbit-ct-unit_stats_and_metrics + - rabbit-ct-unit_supervisor2 + - rabbit-ct-unit_vm_memory_monitor + - rabbit-ct-upgrade_preparation + - rabbit-ct-vhost - amqp_client - amqp10_client - amqp10_common diff --git a/.github/workflows/test-erlang-otp-git.yaml b/.github/workflows/test-erlang-otp-git.yaml index 9f256dec47..b074ba355e 100644 --- a/.github/workflows/test-erlang-otp-git.yaml +++ b/.github/workflows/test-erlang-otp-git.yaml @@ -3555,111 +3555,6 @@ jobs: with: name: rabbit-ct-vhost-logs path: deps/rabbit/*-ct-logs-*.tar.xz - rabbit: - name: rabbit - needs: - - rabbit-checks - - rabbit-ct-amqqueue_backward_compatibility - - rabbit-ct-backing_queue - - rabbit-ct-channel_interceptor - - rabbit-ct-channel_operation_timeout - - rabbit-ct-cluster - - rabbit-ct-cluster_rename - - rabbit-ct-clustering_management - - rabbit-ct-config_schema - - rabbit-ct-confirms_rejects - - rabbit-ct-consumer_timeout - - rabbit-ct-crashing_queues - - rabbit-ct-dead_lettering - - rabbit-ct-definition_import - - rabbit-ct-disconnect_detected_during_alarm - - rabbit-ct-dynamic_ha - - rabbit-ct-dynamic_qq - - rabbit-ct-eager_sync - - rabbit-ct-feature_flags - - rabbit-ct-lazy_queue - - rabbit-ct-list_consumers_sanity_check - - rabbit-ct-list_queues_online_and_offline - - rabbit-ct-maintenance_mode - - rabbit-ct-many_node_ha - - rabbit-ct-message_size_limit - - rabbit-ct-metrics - - rabbit-ct-mirrored_supervisor - - rabbit-ct-msg_store - - rabbit-ct-peer_discovery_classic_config - - rabbit-ct-peer_discovery_dns - - rabbit-ct-per_user_connection_channel_limit - - rabbit-ct-per_user_connection_channel_limit_partitions - - rabbit-ct-per_user_connection_channel_tracking - - rabbit-ct-per_user_connection_tracking - - rabbit-ct-per_vhost_connection_limit - - rabbit-ct-per_vhost_connection_limit_partitions - - rabbit-ct-per_vhost_msg_store - - rabbit-ct-per_vhost_queue_limit - - rabbit-ct-policy - - rabbit-ct-priority_queue - - rabbit-ct-priority_queue_recovery - - rabbit-ct-product_info - - rabbit-ct-proxy_protocol - - rabbit-ct-publisher_confirms_parallel - - rabbit-ct-queue_length_limits - - rabbit-ct-queue_master_location - - rabbit-ct-queue_parallel - - rabbit-ct-queue_type - - rabbit-ct-quorum_queue - - rabbit-ct-rabbit_confirms - - rabbit-ct-rabbit_core_metrics_gc - - rabbit-ct-rabbit_fifo - - rabbit-ct-rabbit_fifo_int - - rabbit-ct-rabbit_fifo_prop - - rabbit-ct-rabbit_fifo_v0 - - rabbit-ct-rabbit_msg_record - - rabbit-ct-rabbit_stream_queue - - rabbit-ct-rabbitmq_queues_cli_integration - - rabbit-ct-rabbitmqctl_integration - - rabbit-ct-rabbitmqctl_shutdown - - rabbit-ct-signal_handling - - rabbit-ct-simple_ha - - rabbit-ct-single_active_consumer - - rabbit-ct-sync_detection - - rabbit-ct-term_to_binary_compat_prop - - rabbit-ct-topic_permission - - rabbit-ct-unit_access_control - - rabbit-ct-unit_access_control_authn_authz_context_propagation - - rabbit-ct-unit_access_control_credential_validation - - rabbit-ct-unit_amqp091_content_framing - - rabbit-ct-unit_amqp091_server_properties - - rabbit-ct-unit_app_management - - rabbit-ct-unit_cluster_formation_locking_mocks - - rabbit-ct-unit_collections - - rabbit-ct-unit_config_value_encryption - - rabbit-ct-unit_connection_tracking - - rabbit-ct-unit_credit_flow - - rabbit-ct-unit_disk_monitor - - rabbit-ct-unit_disk_monitor_mocks - - rabbit-ct-unit_file_handle_cache - - rabbit-ct-unit_gen_server2 - - rabbit-ct-unit_gm - - rabbit-ct-unit_log_config - - rabbit-ct-unit_log_management - - rabbit-ct-unit_operator_policy - - rabbit-ct-unit_pg_local - - rabbit-ct-unit_plugin_directories - - rabbit-ct-unit_plugin_versioning - - rabbit-ct-unit_policy_validators - - rabbit-ct-unit_priority_queue - - rabbit-ct-unit_queue_consumers - - rabbit-ct-unit_stats_and_metrics - - rabbit-ct-unit_supervisor2 - - rabbit-ct-unit_vm_memory_monitor - - rabbit-ct-upgrade_preparation - - rabbit-ct-vhost - runs-on: ubuntu-18.04 - if: '!contains(github.event.head_commit.message, ''[ci skip]'') && (success() || failure())' - steps: - - name: FAN IN rabbit SUITES - run: | - echo "Success" amqp_client: name: amqp_client needs: @@ -5011,7 +4906,102 @@ jobs: - prepare - xref - rabbit_common - - rabbit + - rabbit-checks + - rabbit-ct-amqqueue_backward_compatibility + - rabbit-ct-backing_queue + - rabbit-ct-channel_interceptor + - rabbit-ct-channel_operation_timeout + - rabbit-ct-cluster + - rabbit-ct-cluster_rename + - rabbit-ct-clustering_management + - rabbit-ct-config_schema + - rabbit-ct-confirms_rejects + - rabbit-ct-consumer_timeout + - rabbit-ct-crashing_queues + - rabbit-ct-dead_lettering + - rabbit-ct-definition_import + - rabbit-ct-disconnect_detected_during_alarm + - rabbit-ct-dynamic_ha + - rabbit-ct-dynamic_qq + - rabbit-ct-eager_sync + - rabbit-ct-feature_flags + - rabbit-ct-lazy_queue + - rabbit-ct-list_consumers_sanity_check + - rabbit-ct-list_queues_online_and_offline + - rabbit-ct-maintenance_mode + - rabbit-ct-many_node_ha + - rabbit-ct-message_size_limit + - rabbit-ct-metrics + - rabbit-ct-mirrored_supervisor + - rabbit-ct-msg_store + - rabbit-ct-peer_discovery_classic_config + - rabbit-ct-peer_discovery_dns + - rabbit-ct-per_user_connection_channel_limit + - rabbit-ct-per_user_connection_channel_limit_partitions + - rabbit-ct-per_user_connection_channel_tracking + - rabbit-ct-per_user_connection_tracking + - rabbit-ct-per_vhost_connection_limit + - rabbit-ct-per_vhost_connection_limit_partitions + - rabbit-ct-per_vhost_msg_store + - rabbit-ct-per_vhost_queue_limit + - rabbit-ct-policy + - rabbit-ct-priority_queue + - rabbit-ct-priority_queue_recovery + - rabbit-ct-product_info + - rabbit-ct-proxy_protocol + - rabbit-ct-publisher_confirms_parallel + - rabbit-ct-queue_length_limits + - rabbit-ct-queue_master_location + - rabbit-ct-queue_parallel + - rabbit-ct-queue_type + - rabbit-ct-quorum_queue + - rabbit-ct-rabbit_confirms + - rabbit-ct-rabbit_core_metrics_gc + - rabbit-ct-rabbit_fifo + - rabbit-ct-rabbit_fifo_int + - rabbit-ct-rabbit_fifo_prop + - rabbit-ct-rabbit_fifo_v0 + - rabbit-ct-rabbit_msg_record + - rabbit-ct-rabbit_stream_queue + - rabbit-ct-rabbitmq_queues_cli_integration + - rabbit-ct-rabbitmqctl_integration + - rabbit-ct-rabbitmqctl_shutdown + - rabbit-ct-signal_handling + - rabbit-ct-simple_ha + - rabbit-ct-single_active_consumer + - rabbit-ct-sync_detection + - rabbit-ct-term_to_binary_compat_prop + - rabbit-ct-topic_permission + - rabbit-ct-unit_access_control + - rabbit-ct-unit_access_control_authn_authz_context_propagation + - rabbit-ct-unit_access_control_credential_validation + - rabbit-ct-unit_amqp091_content_framing + - rabbit-ct-unit_amqp091_server_properties + - rabbit-ct-unit_app_management + - rabbit-ct-unit_cluster_formation_locking_mocks + - rabbit-ct-unit_collections + - rabbit-ct-unit_config_value_encryption + - rabbit-ct-unit_connection_tracking + - rabbit-ct-unit_credit_flow + - rabbit-ct-unit_disk_monitor + - rabbit-ct-unit_disk_monitor_mocks + - rabbit-ct-unit_file_handle_cache + - rabbit-ct-unit_gen_server2 + - rabbit-ct-unit_gm + - rabbit-ct-unit_log_config + - rabbit-ct-unit_log_management + - rabbit-ct-unit_operator_policy + - rabbit-ct-unit_pg_local + - rabbit-ct-unit_plugin_directories + - rabbit-ct-unit_plugin_versioning + - rabbit-ct-unit_policy_validators + - rabbit-ct-unit_priority_queue + - rabbit-ct-unit_queue_consumers + - rabbit-ct-unit_stats_and_metrics + - rabbit-ct-unit_supervisor2 + - rabbit-ct-unit_vm_memory_monitor + - rabbit-ct-upgrade_preparation + - rabbit-ct-vhost - amqp_client - amqp10_client - amqp10_common diff --git a/workflow_sources/test/ct.lib.yml b/workflow_sources/test/ct.lib.yml index d42cef4780..27094ff26c 100644 --- a/workflow_sources/test/ct.lib.yml +++ b/workflow_sources/test/ct.lib.yml @@ -105,17 +105,3 @@ steps: #@ end #@ end #@ end - -#@ def collect_job(dep, erlang_version=None): -name: #@ dep.name -needs: #@ [dep.name + "-checks"] + [dep.name + "-ct-" + suite.name for suite in dep.suites] -runs-on: ubuntu-18.04 -#! See https://docs.github.com/en/free-pro-team@latest/actions/reference/context-and-expression-syntax-for-github-actions#job-status-check-functions -#! as to why '(success() || failure())' is needed -if: #@ skip_ci_condition() + " && (success() || failure())" -#@yaml/text-templated-strings -steps: -- name: #@ "FAN IN {} SUITES".format(dep.name) - run: | - echo "Success" -#@ end
\ No newline at end of file diff --git a/workflow_sources/test/dep.star b/workflow_sources/test/dep.star index b52d20c1cc..5595efc6ce 100644 --- a/workflow_sources/test/dep.star +++ b/workflow_sources/test/dep.star @@ -1,5 +1,5 @@ load("rabbitmq_cli.lib.yml", "rabbitmq_cli_job") -load("ct.lib.yml", "checks_job", "ct_suites_job", "collect_job") +load("ct.lib.yml", "checks_job", "ct_suites_job") load("tests.lib.yml", "tests_job") def dep_jobs(dep, erlang_version=None): @@ -12,7 +12,6 @@ def dep_jobs(dep, erlang_version=None): for suite in dep.suites: jobs[dep.name + "-ct-" + suite.name] = ct_suites_job(dep, suite.name, erlang_version=erlang_version) end - jobs[dep.name] = collect_job(dep, erlang_version=erlang_version) else: jobs[dep.name] = tests_job(dep, erlang_version=erlang_version) end diff --git a/workflow_sources/test/finish.lib.yml b/workflow_sources/test/finish.lib.yml index 528d17e490..390047e99b 100644 --- a/workflow_sources/test/finish.lib.yml +++ b/workflow_sources/test/finish.lib.yml @@ -1,5 +1,6 @@ #@ load("@ytt:data", "data") #@ load("helpers.star", "ci_image", "ci_image_tag", "skip_ci_condition") +#@ load("util.star", "flatten") #@ def gcs_path(): #@ c = ['monorepo_github_actions_conclusions'] @@ -8,10 +9,22 @@ #@ return '/'.join(c) #@ end +#@ def dep_jobs(dep): +#@ if not getattr(dep, "skip_tests", False): +#@ if getattr(dep, "test_suites_in_parallel", False): +#@ return [dep.name + "-checks"] + [dep.name + "-ct-" + suite.name for suite in dep.suites] +#@ else: +#@ return [dep.name] +#@ end +#@ else: +#@ return [] +#@ end +#@ end + #@ def finish_jobs(prepare_jobs_names, erlang_version=None): finish: name: finish - needs: #@ prepare_jobs_names + [dep.name for dep in data.values.deps if not getattr(dep, "skip_tests", False)] + needs: #@ flatten([prepare_jobs_names] + [dep_jobs(dep) for dep in data.values.deps]) runs-on: ubuntu-18.04 #! See https://docs.github.com/en/free-pro-team@latest/actions/reference/context-and-expression-syntax-for-github-actions#job-status-check-functions #! as to why '(success() || failure())' is needed diff --git a/workflow_sources/test/util.star b/workflow_sources/test/util.star index f08c9a8e7a..5a8bf2bfe7 100644 --- a/workflow_sources/test/util.star +++ b/workflow_sources/test/util.star @@ -2,6 +2,10 @@ def is_unique(l): return len(l) == len(set(l)) end +def flatten(l): + return [item for sublist in l for item in sublist] +end + def merge(dicts): r = {} for d in dicts: |
