Project

Profile

Help

Task #5913

Make the option to generate fixtures locally available for all plugins

Added by fao89 12 months ago. Updated 8 months ago.

Status:
CLOSED - COMPLETE
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
CI/CD
Sprint:
Sprint 65
Quarter:

Description

Currently, only pulpcore and pulp_file have the option to generate fixtures locally.
We want that option to be available for all plugins,
since some plugins have limitation to be generated on travis(due ubuntu), one approach would be container based.


Related issues

Related to File Support - Task #5872: Generate pulp_file fixtures on Travis and serve using nginxCLOSED - CURRENTRELEASE

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>
Related to Pulp - Task #5873: update pulpcore and pulp_file functional tests to use a configurable hostname+prefix for fixturesCLOSED - CURRENTRELEASE

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>
Related to RPM Support - Task #6030: Switch to local fixturesCLOSED - CURRENTRELEASE

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>

Associated revisions

Revision ffe42296 View on GitHub
Added by daviddavis 11 months ago

Add option to use pulp-fixtures docker container

fixes #5913 https://pulp.plan.io/issues/5913

History

#1 Updated by fao89 12 months ago

  • Related to Task #5872: Generate pulp_file fixtures on Travis and serve using nginx added

#2 Updated by fao89 12 months ago

  • Related to Task #5873: update pulpcore and pulp_file functional tests to use a configurable hostname+prefix for fixtures added

#3 Updated by fao89 12 months ago

  • Subject changed from Make available for all plugins the option to generate fixtures locally to Make the option to generate fixtures locally available for all plugins

#4 Updated by daviddavis 12 months ago

Thank you for filing this. The hard part I think is generating the fixtures. Here's a link to the list of dependencies:

https://github.com/pulp/pulp-fixtures#dependencies

Definitely the hard ones are going to be the rpm dependencies (createrepo, rpmsign, fedpkg, etc).

I don't see us generating fixtures in Travis without some sort of container-based approach. Either generating the fixtures inside a container or just shipping a container with the fixtures already built.

#5 Updated by mdepaulo@redhat.com 12 months ago

Using a travis cronjob, we can write and build a container image from a dockerfile (or use buildah to copy the fixtures as arbitrary files into a container image.) In either case, we can try to base it on an existing nginx image.

Once it's built, we can push like we do for pulp-operator (and will soon do for plugins):
https://github.com/pulp/pulp-operator/blob/master/.travis.yml#L28
https://github.com/pulp/pulp-operator/blob/master/.travis/quay-push.sh

However, when the image is pulled, you'll then have to either run it via Docker and point the pulp containers to it, or try to run it via kubernetes. The former is probably easier.

I can advise on all this.

#6 Updated by dkliban@redhat.com 11 months ago

  • Groomed changed from No to Yes
  • Sprint set to Sprint 63

#7 Updated by daviddavis 11 months ago

  • Sprint Candidate changed from No to Yes

I've got a Dockerfile that generates the fixtures and serves them via nginx:

https://gist.github.com/daviddavis/562569487be1622ac8e05515e8fee385

#8 Updated by daviddavis 11 months ago

@mikedep333,

Any idea where the Dockerfile should live and which project should build/push the pulp-fixtures container? I was thinking maybe we could keep it in the pulp-fixtures[0] project?

[0] https://github.com/pulp/pulp-fixtures

#9 Updated by mdepaulo@redhat.com 11 months ago

daviddavis wrote:

@mikedep333,

Any idea where the Dockerfile should live and which project should build/push the pulp-fixtures container? I was thinking maybe we could keep it in the pulp-fixtures[0] project?

[0] https://github.com/pulp/pulp-fixtures

Yes, after reviewing the Dockerfile (which only references files in that repo), I agree.

I can advise on making .travis.yml and other changes.

#10 Updated by daviddavis 11 months ago

  • Status changed from NEW to POST
  • Assignee set to daviddavis

#11 Updated by rchan 11 months ago

  • Sprint changed from Sprint 63 to Sprint 64

#12 Updated by daviddavis 11 months ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100

#13 Updated by daviddavis 11 months ago

  • Status changed from MODIFIED to POST

Still waiting to merge this PR: https://github.com/pulp/pulp-fixtures/pull/129

#14 Updated by daviddavis 11 months ago

  • Blocks Task #6030: Switch to local fixtures added

#15 Updated by rchan 11 months ago

  • Sprint changed from Sprint 64 to Sprint 65

#16 Updated by daviddavis 11 months ago

  • Status changed from POST to MODIFIED

#17 Updated by ttereshc 9 months ago

  • Blocks deleted (Task #6030: Switch to local fixtures)

#18 Updated by ttereshc 9 months ago

  • Related to Task #6030: Switch to local fixtures added

#19 Updated by daviddavis 8 months ago

  • Status changed from MODIFIED to CLOSED - COMPLETE

Please register to edit this issue

Also available in: Atom PDF