Skip to content
This repository has been archived by the owner on May 28, 2024. It is now read-only.

Add clarification about objects inside collection Galaxy artifacts #157

Closed

Conversation

Andersson007
Copy link
Contributor

@Andersson007 Andersson007 commented Feb 24, 2021

SUMMARY

Add clarification about objects inside collection Galaxy artifacts
The current collection tarball size limit to upload to galaxy is 20MB.
When a number of collection increases, it can affect Ansible distribution size significantly.

ansible/community#539

@dmsimard
Copy link
Contributor

We discussed this briefly on IRC and I'll echo what I mentioned there for posterity: I wonder if we should ship tests in the package at all.

In my experience in RPM land (my deb is rusty), it's a common practice to split docs, tests and the actual python stuff in different packages so that when you install the thing, you don't end up installing docs and tests but can still get them if you want.

It turns out that tests are included in the collection tarballs and so they end up being included when you install them either via ansible-galaxy collection install or with the current community package.

To put this into perspective, we're already shipping more than 80 collections and over 180 test directories in 3.0.0:

> find ~/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections -type d -name tests -prune | xargs du -sh |sort -rh
11M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/network/tests
9.3M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/general/tests
8.2M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/nxos/tests
7.7M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/aws/tests
5.5M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/amazon/aws/tests
4.4M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/f5networks/f5_modules/tests
4.0M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/arista/eos/tests
3.7M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/vmware/tests
3.6M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/ios/tests
3.4M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ansible/utils/tests
3.3M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/windows/tests
3.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/junipernetworks/junos/tests
3.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/tests
3.0M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/tests
2.8M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/vyos/vyos/tests
2.7M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/iosxr/tests
2.5M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ansible/windows/tests
2.4M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/crypto/tests
2.3M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/tests
2.3M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/azure/azcollection/tests
2.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/docker/tests
1.8M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ngine_io/cloudstack/tests
1.8M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/aci/tests
1.7M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/openmanage/tests
1.5M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp_eseries/santricity/tests
1.5M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/postgresql/tests
1.4M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netbox/netbox/tests
1.4M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/mso/tests
1.2M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/sensu/sensu_go/tests
1.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/mellanox/onyx/tests
1.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/check_point/mgmt/tests
1.1M	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ansible/netcommon/tests
1008K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/hetzner/hcloud/tests
928K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ansible/posix/tests
848K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/asa/tests
760K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/meraki/tests
664K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mysql/tests
648K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/tests
628K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ngine_io/vultr/tests
612K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/rabbitmq/tests
596K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/azure/tests
580K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/fortios/tests
536K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/awx/awx/tests
528K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/sops/tests
516K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/proxysql/tests
432K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/openvswitch/openvswitch/tests
432K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cisco/nso/tests
404K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/elementsw/tests
396K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/grafana/tests
392K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/containers/podman/tests
368K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cloudscale_ch/cloud/tests
364K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cyberark/conjur/tests
364K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/libvirt/tests
360K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/tests
344K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/tests
260K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/frr/frr/tests
256K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/routeros/tests
244K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/hashi_vault/tests
220K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/hrobot/tests
200K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/chocolatey/chocolatey/tests
184K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/kubevirt/tests
140K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cyberark/conjur/roles/conjur_host_identity/tests
140K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/google/tests
136K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/aws/tests
132K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/kubernetes/core/tests
132K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/kubernetes/tests
108K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ibm/qradar/tests
92K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/splunk/es/tests
76K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/digitalocean/tests
44K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ngine_io/exoscale/tests
44K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_network_validation/tests
44K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cyberark/pas/tests
44K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/skydive/tests
40K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ovirt/ovirt/roles/engine_setup/tests
36K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_fabric_summary/tests
32K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/molecule/zabbix_agent/tests
28K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/servicenow/servicenow/tests
24K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_template/tests
24K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_bgp/tests
24K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/roles/zabbix_agent/molecule/with-server/tests
20K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/ovirt/ovirt/tests
20K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/okd/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/purestorage/flashblade/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/roles/stackdriver_monitoring/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/roles/stackdriver_logging/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/molecule/gcsfuse/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/molecule/gcloud/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/gluster/gluster/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_xstp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_vrrp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_vrf/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_vlt/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_vlan/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_users/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_system/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_snmp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_sflow/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_prefix_list/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_ntp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_logging/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_lldp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_lag/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_interface/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_ecmp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_dns/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_dcb/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_copy_config/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_bgp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_acl/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os9/roles/os9_aaa/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_xstp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_vrrp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_vlan/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_users/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_system/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_snmp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_qos/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_ntp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_logging/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_lldp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_lag/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_interface/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_bgp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_acl/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os6/roles/os6_aaa/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_xstp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_vxlan/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_vrrp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_vrf/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_vlt/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_vlan/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_users/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_uplink/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_system/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_snmp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_route_map/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_raguard/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_qos/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_prefix_list/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_ntp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_logging/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_lldp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_lag/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_interface/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_image_upgrade/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_flow_monitor/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_ecmp/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_dns/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_copy_config/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_bfd/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_acl/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/dellemc/os10/roles/os10_aaa/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/molecule/zabbix_web/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/molecule/zabbix_server/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/molecule/zabbix_proxy/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/zabbix/molecule/zabbix_javagateway/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/proxysql/roles/proxysql/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_selinux/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_selinux/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_repository/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_repository/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_mongos/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_mongos/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_mongod/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_mongod/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_linux/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_linux/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_install/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_install/molecule/specific_mongodb_version/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_install/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_config/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_config/molecule/default/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_auth/molecule/virtualbox/tests
16K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/community/mongodb/roles/mongodb_auth/molecule/default/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/purestorage/flasharray/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/roles/na_ontap_vserver_create/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/roles/na_ontap_snapmirror_create/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/roles/na_ontap_san_create/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/roles/na_ontap_nas_create/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/netapp/ontap/roles/na_ontap_cluster_config/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/google/cloud/roles/gcp_http_lb/tests
12K	/home/dmsimard/dev/virtualenvs/ansible/lib/python3.9/site-packages/ansible_collections/cyberark/conjur/project/roles/testrole/tests

Even discounting the increase in size of the tarball (and once decompressed/installed on disk), this is still a lot of files that we're installing which further exacerbates install performance issues we've noticed and things will only get worse as we include more and more collections.

As a comparison point, while ansible-core ships ansible-test in it's package, it doesn't include the integration tests.

It appears there might be legal implications in removing the test directories from the collections -- I don't know about that but would like to find out.

@felixfontein
Copy link
Contributor

felixfontein commented Feb 24, 2021

Would someone mind going through the meeting notes where we already discussed this multiple times so we don't repeat everything again? :) This is not really related to this change.

@Andersson007 Andersson007 changed the title Add a requirement not to store package installers and other large objects used for integration tests [WIP] Add a recommendation not to store large objects used inside collections (e.g, package installers) Feb 24, 2021
@Andersson007 Andersson007 changed the title [WIP] Add a recommendation not to store large objects used inside collections (e.g, package installers) [WIP] Add a recommendation not to store large objects inside collections (e.g., package installers) Feb 24, 2021
@felixfontein
Copy link
Contributor

I'd suggest to not only mention /tests/integration/, but mention this for the whole collection - or more precisely the files that end up in the collection artefact. For example something like: if you need to include large (binary) files in your collection repository, make sure to exclude them from the collection build and make sure that your tests also work without them (for example by loading them from the repository when the files are not present).

@Andersson007 Andersson007 changed the title [WIP] Add a recommendation not to store large objects inside collections (e.g., package installers) Add clarification about objects inside collection Galaxy artifacts Feb 25, 2021
@Andersson007
Copy link
Contributor Author

ready_for_review

@felixfontein
Copy link
Contributor

LGTM, let's discuss this at the next community meeting.

@Andersson007
Copy link
Contributor Author

@felixfontein @dmsimard seems that we forgot about this PR. Should i rebase this after #195 gets merged?

@@ -28,6 +28,8 @@ Every comment should say whether the reviewer expects it to be addressed, or whe
- [ ] collection dependencies must have a lower bound on the version which is at least 1.0.0, and are all part of the `ansible` package
- [ ] `meta/runtime.yml` defines the minimal version of Ansible which the collection works with
- [ ] has changelog, preferably with `changelogs/changelog.yaml`
- [ ] collection Galaxy artifact (tarball) should not contain any large objects (binaries) comparatively to the current tarball size limit of 20 MB
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [ ] collection Galaxy artifact (tarball) should not contain any large objects (binaries) comparatively to the current tarball size limit of 20 MB
- [ ] collection Galaxy artifact (tarball) should not contain any large objects (binaries) comparatively to the current tarball size limit of 20 MB

i would also mention other unrelated things like David mentioned (iirc pyenv files, etc.)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is complicated due to legal requirements. The tarballs on Galaxy act right now as the source distribution (and in fact only distribution), so it's not clear to me whether it would be allowed to leave anything out that's used to develop and package the collection.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'll create a new PR instead anyway as it would be harder to rebase this stuff. I'd like mentioning that we should check for such things anyway and point out to them. If a collection repo is full of such things, it's not good

@Andersson007
Copy link
Contributor Author

closed via #196

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants