Skip to content
Snippets Groups Projects
  • kegsay's avatar
    0938f32e
    CI: run Complement on the VM, not inside Docker (#11811) · 0938f32e
    kegsay authored
    * CI: run Complement on the VM, not inside Docker
    
    This requires https://github.com/matrix-org/complement/pull/289
    
    
    
    We now run Complement on the VM instead of inside a Docker container.
    This is to allow Complement to bind to any high-numbered port when it
    starts up its own federation servers. We want to do this to allow for
    more concurrency when running complement tests. Previously, Complement
    only ever bound to `:8448` when running its own federation server. This
    prevented multiple federation tests running at the same time as they would
    fight each other on the port. This did however allow Complement to run
    in Docker, as the host could just port forward `:8448` to allow homeserver
    containers to communicate to Complement. Now that we are using random
    ports however, we cannot use Docker to run Complement. This ends up
    being a good thing because:
     - Running Complement tests locally is closer to how they run in CI.
     - Allows the `CI` env var to be removed in Complement.
     - Slightly speeds up runs as we don't need to pull down the Complement
       image prior to running tests. This assumes GHA caches actions sensibly.
    
    * Changelog
    
    * Full stop
    
    * Update .github/workflows/tests.yml
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    
    * Review comments
    
    * Update .github/workflows/tests.yml
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    CI: run Complement on the VM, not inside Docker (#11811)
    kegsay authored
    * CI: run Complement on the VM, not inside Docker
    
    This requires https://github.com/matrix-org/complement/pull/289
    
    
    
    We now run Complement on the VM instead of inside a Docker container.
    This is to allow Complement to bind to any high-numbered port when it
    starts up its own federation servers. We want to do this to allow for
    more concurrency when running complement tests. Previously, Complement
    only ever bound to `:8448` when running its own federation server. This
    prevented multiple federation tests running at the same time as they would
    fight each other on the port. This did however allow Complement to run
    in Docker, as the host could just port forward `:8448` to allow homeserver
    containers to communicate to Complement. Now that we are using random
    ports however, we cannot use Docker to run Complement. This ends up
    being a good thing because:
     - Running Complement tests locally is closer to how they run in CI.
     - Allows the `CI` env var to be removed in Complement.
     - Slightly speeds up runs as we don't need to pull down the Complement
       image prior to running tests. This assumes GHA caches actions sensibly.
    
    * Changelog
    
    * Full stop
    
    * Update .github/workflows/tests.yml
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    
    * Review comments
    
    * Update .github/workflows/tests.yml
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>