Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using CKAN Backports Repository for Building Images >2.9.11 #94

Merged
merged 79 commits into from
Aug 26, 2024

Conversation

mjanez
Copy link
Owner

@mjanez mjanez commented Aug 26, 2024

Using CKAN Backports Repository for Building Images >2.9.11

Description

This PR introduces the use of the CKAN backports repository for building CKAN images for versions greater than 2.9.11. Below is an explanation of why this change is necessary.

Changes Introduced

In the Dockerfile, the following lines have been added:

# CKAN backports repository for >2.9.11 releases
ENV GIT_ORG=derilinx
ENV GIT_REPO=ckan-backports
ENV GIT_URL=https://github.com/${GIT_ORG}/${GIT_REPO}.git

Justification

Versions of CKAN greater than 2.9.11 require certain patches and improvements that are not present in the main CKAN repository. To address these issues and ensure the stability and functionality of CKAN, a backports repository has been created that includes these necessary changes.

  1. Compatibility and Stability: The backports repository contains patches and improvements that ensure versions greater than 2.9.11 work correctly. This includes bug fixes and security enhancements that are not available in the main repository.

  2. Ease of Maintenance: By centralizing these changes in a specific repository, it becomes easier to maintain and update CKAN images. This allows for the quick application of new patches and improvements without affecting the stability of previous versions.

  3. Flexibility in Image Building: Using environment variables (GIT_ORG, GIT_REPO, GIT_URL, we allow greater flexibility in building the images. This makes it easier to change the source of the code if necessary without modifying the Dockerfile.

Conclusion

Using the CKAN backports repository for versions greater than 2.9.11 is a necessary measure to ensure the compatibility, stability, and ease of maintenance of CKAN images. This approach allows for the quick application of patches and improvements, ensuring that the latest versions of CKAN work correctly in production environments.

Please review and approve these changes to improve the building and maintenance of our CKAN images.

References

roll and others added 30 commits April 19, 2024 10:27
use while loop for restarting dev
debugpy support for VS Code remote debugging
Upgrade db like the console text says
uninstall src packages found in src_extensions
fix for master packaging uninstall error
- Bump DataPusher version
- Listen on an IPv6 unspecified address (rather than IPv4)
- Set up timezone to get rid of warning messages
- CKAN 2.10 and master uwsgi processes to listen on ipv6
- CKAN 2.9 to remain on ipv4
No need to reference a python specific details
Co-authored-by: Adrià Mercader <amercadero@gmail.com>
Co-authored-by: Adrià Mercader <amercadero@gmail.com>
Co-authored-by: Adrià Mercader <amercadero@gmail.com>
Co-authored-by: Adrià Mercader <amercadero@gmail.com>
kowh-ai and others added 25 commits July 2, 2024 10:52
Use ckan/ckan-base:2.9.11-py3.9 for the base image (rather than .py3.10)
Update Dockerfile.py3.9 for CKAN 2.9 (dev)
It's not clear we are using this, and they were installing a system-wide
packaging package that could not be uninstalled when installing CKAN
requirements:

error: uninstall-distutils-installed-package

Cannot uninstall packaging 21.3
╰─> It is a distutils installed project and thus we cannot accurately...
- Alpine legacy images (Dockerfile)
- New Python images (py3.*)
- Align with ckan/ckan-docker-base updates. (Fix setup files)
- Add proj to base Dockerfiles
- Add Dockerfile.py3.* to ckan-2.9 and ckan-2.10
- Improve test images using the official ckan-base images
- Updated the "Determine Python Dockerfile" step to output only the filename instead of the full path.
- This change ensures that subsequent steps referencing the Dockerfile do not fail due to incorrect paths.
- Adjusted the `find` command to extract just the filename using `basename`.
- Switched to a lighter base image: python:3.10-slim-bookworm
- Consolidated multiple RUN commands to reduce the number of layers
- Cleaned up apt cache and removed unnecessary files to reduce image size
- Used --no-cache-dir with pip to avoid caching packages
- Defined environment variables at the beginning for easier configuration
- Grouped related commands together to improve readability and maintainability
- Ensured locale and timezone settings are configured in a single RUN command
- Add determine Dockerfile to dev images
- Fix suffix_tag generation.
- Add image build & push for Dockerfile and Dockerfile.py3.*
- Improve PR checks
- Improve manual workflow
- Align ckan-docker-spatial from ckan-docker-base
- Add ckan-2.11
- Improve ckan-2.9 and ckan-2.10 images with Debian-based Python images instead of Alpine
#70
@mjanez mjanez added bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request labels Aug 26, 2024
@mjanez mjanez self-assigned this Aug 26, 2024
@mjanez mjanez merged commit 7311b22 into ckan-2.9 Aug 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants