{"id":18913554,"url":"https://github.com/complianceascode/demo","last_synced_at":"2025-08-02T04:08:31.726Z","repository":{"id":80492244,"uuid":"167026091","full_name":"ComplianceAsCode/demo","owner":"ComplianceAsCode","description":null,"archived":false,"fork":false,"pushed_at":"2019-11-08T13:56:11.000Z","size":38,"stargazers_count":0,"open_issues_count":1,"forks_count":2,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-06-01T05:31:34.232Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ComplianceAsCode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-01-22T16:20:00.000Z","updated_at":"2019-11-08T13:56:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"427265f0-cd64-48a2-bb1d-dc75f88297ce","html_url":"https://github.com/ComplianceAsCode/demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ComplianceAsCode/demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ComplianceAsCode%2Fdemo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ComplianceAsCode%2Fdemo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ComplianceAsCode%2Fdemo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ComplianceAsCode%2Fdemo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ComplianceAsCode","download_url":"https://codeload.github.com/ComplianceAsCode/demo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ComplianceAsCode%2Fdemo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268334101,"owners_count":24233782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T10:08:14.037Z","updated_at":"2025-08-02T04:08:31.718Z","avatar_url":"https://github.com/ComplianceAsCode.png","language":"Shell","readme":"# ComplianceAsCode/content workshop\n\n\nThis repository features support files and examples to support going through a ComplianceAsCode/content tutorial.\n\n## Setup before the workshop\n\nWe recommend attendees of the workshop to prepare a few things before the workshop.\\\nInternet connection may be limited so we kindly ask you to:\n- Clone the following repositories:\n  - `git clone https://github.com/ComplianceAsCode/demo.git`\n  - `git clone https://github.com/ComplianceAsCode/content.git`\n- [Install and setup Test Suite VM](#Install-the-test-VM)\n\n## Test Suite VM\n\nComplianceAsCode/content project features a Test Suite to test rule remediation and check.\\\nFor detailed info check https://github.com/ComplianceAsCode/content/tree/master/tests.\n\n### Install the test VM\n\nGo to ComplianceAsCode/content `tests` directory, and run the `install_vm.py` script.\nFor the demo we recommend using a Fedora virtual machine.\n```\n$ install_vm.py ./install_vm.py --distro fedora --domain test-suite-fedora\n```\n\nThe command above will create the VM in the user instance of libvirtd.\\\nAfter instalation finishes you will have to reconfigure the NIC of the machine to be able to SSH into it.\\\nCheck what is the name of the virtual bridge interface provided by libvirt, `ip addr | grep virbr`.\\\nIt will very likely be `virbr0`, edit the hardware settings of your VM:\n-  change the source of NIC to \"Specify shared device name\", and \n- set \"Bridge name\" to your virtual bridge interface (e.g., `virbr0`).\n\n![Edit VM NIC](/images/libvirt_nic_bridge.png)\n\nIf you run the install script as root, the VM will be created in the system instance of libvirtd.\\\nYou won't need to reconfigure the NIC, but every time you run the Test Suite, privileges will be required (i.e., type the root password).\n\nNote: the root password of the VM is \"server\".\n\n### Configure SSH connection\n\nThe Test Suite connects to the VM via SSH.\\\nTo avoid typing the password for every connection made, let's configure SSH key authentication.\n\nIf you don't have an SSH key to use, generate one:\\\n`ssh-keygen -f ~/.ssh/test-suite-fedora_rsa -N \"\"`\n\nCopy the public key to the VM:\n```\nssh-copy -i ~/.ssh/test-suite-fedora_rsa.pub root@\u003cip\u003e\n```\n\nAdd an entry for the VM in ~/.ssh/config.\n```\nhost \u003cip\u003e\n    IdentityFile ~/.ssh/test-suite-fedora_rsa\n    User root\n```\n\n### Save the state of VM\n\nCreate a snapshot of the VM so that you can revert manually if anything goes wrong and the Test Suite cannot revert automatically.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomplianceascode%2Fdemo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcomplianceascode%2Fdemo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomplianceascode%2Fdemo/lists"}