Skip to content

Sugar Contribution (#1)#102

Open
rfernandes-sugarcrm wants to merge 31 commits into
esimonetti:masterfrom
sugarcrm-developers:master
Open

Sugar Contribution (#1)#102
rfernandes-sugarcrm wants to merge 31 commits into
esimonetti:masterfrom
sugarcrm-developers:master

Conversation

@rfernandes-sugarcrm

Copy link
Copy Markdown
Contributor

The following items have been implemented in this PR:

Support for Sugar 13's Supported Platform
Decoupled web and cron images from redis (you can now specify your own service)
Created Github Actions to compile and create a its related image in DockerHub
DockerHub images are built for multiple macOS chipsets (ARM64, AMD64)
Updated test cases to work with ES 8.x

rfernandes-sugarcrm and others added 15 commits May 8, 2023 14:05
* Fixed copyright notice as it was mistakely not updated

* Implemented Sugar 13

* Added prefix to the images

* Fixed Prefix tag with Flavor

* Removing latest from the build

* Addd meta id

* Fixed context

* Updating the context

* Adding multiple platforms

* Moved platforms to QEMU

* Add platforms to build and push

* amd64/v4 not supported

* Restricting to linux/amd64,linux/arm64

* Fixed ES volume and Removed prebuilt yml

* Fixed ES and removed latest

* Added missing images

* Added Docker config for DH images

---------

Co-authored-by: Enrico Simonetti <enrico.simonetti@gmail.com>
* Decoupled Images for PHP8.0

* Added sugar12 and commons to GH Actions

* Fixed strategy run for local build only
* Implemented Cloud backup restore

* Added restorefromfile.sh to README
* Update README.md

* Update README.md
* Implemented Cloud backup restore

* Added restorefromfile.sh to README

* Fixed Xdebug 3 and added php.ini config
* Delete tests/web_tests/8.0/test_6.php

* Delete tests/web_tests/8.2/test_6.php
not relevant from non-sugar employees
Add the instruction that warns if "unzip" is not settled. This will prevent future errors that happen to me.
* Implemented Cloud backup restore

* Added restorefromfile.sh to README

* Fixed Xdebug 3 and added php.ini config

* Removing not valid test cases

* Update simpleRepair.php
* Sugar 14.0 Stack
* Update sugar9.yml

* Update sugar11.yml
@rfernandes-sugarcrm rfernandes-sugarcrm changed the title Sugar v13 - Support for PHP 8.2 (#1) Sugar Contribution (#1) May 21, 2024
rfernandes-sugarcrm and others added 14 commits October 17, 2024 09:11
* Modifying to use proper Docker images.

* Fixed when .htaccess not present
* Modifying to use proper Docker images.

* Fixed when .htaccess not present

* Added docker.ini to image and enabled Blowfish on OpenSSL 3.0
* docker-compose no longer available

* Fixed failing tests on recent github actions
* Replaced toothpaste with simpleRepair and fix tests

* Added sugar folder

* Fixed docker compose command

* removing sugar9 workflows no longer supported
* Replaced toothpaste with simpleRepair and fix tests

* Added sugar folder

* Fixed docker compose command

* removing sugar9 workflows no longer supported

* Sugar 25 Implementation

* no longer supported

* Fixed missing tests and build without push
* Update README.md

* Update README.md
* Sugar 26 Implementation

* Fix testsmtp build: bump base image to debian:stable-slim

Debian 10 (Buster) is EOL and its package repositories have been moved
to archive, causing apt-get to 404 during image builds.

* Replacing Debian EOL with stable.
The terminator '+\;' is parsed by the shell as the literal token '+;',
which is neither a valid '+' nor ';' terminator for find -exec, causing
'find: missing argument to -exec' on strict GNU find (e.g., Ubuntu 24.04).

The inline 'sh -c' only references $2, so single-file semantics (\;) is
the intended behavior anyway. Fixes #24.
Without this placeholder, data/app/sugar/ does not exist on fresh
checkout. The workflow step 'cp -r ./tests/web_tests ./data/app/sugar/'
then renames tests/web_tests to data/app/sugar instead of copying
into it, causing the test runner to look for ./web_tests/<ver>/ at
a path that does not exist. Affects sugar12/13/14/25/26 workflows.
Adopt an N and N-1 support model: only Sugar 25 and 26 are built by CI
on every tag. The Sugar 12/13/14 workflows no longer succeed on Ubuntu
24.04 runners (Elasticsearch JDK NPE under cgroup v2; Composer 2.9
block-insecure rejecting old guzzle) and rebuilding them only re-pushes
images already available on Docker Hub.

- Remove .github/workflows/sugar12.yml, sugar13.yml, sugar14.yml.
  Stack files are kept; legacy images remain available on Docker Hub.
- Bump guzzlehttp/guzzle from pinned 6.5.6 to ^7.0 in the web_tests
  composer.json files used by the active matrices (8.3.14, 8.4.4,
  8.5.0). 6.5.6 has four security advisories that Composer 2.9 now
  blocks during resolution, causing vendor/autoload.php to be missing
  and test_5.php to fail.
- Update README badges and add a 'Legacy stacks' section pointing
  users to the existing Docker Hub tags for older Sugar versions.

Note: stacks/sugar25/php83(*.yml) continues to use elasticsearch:8.4.3
per Sugar 25 platform spec. The ci-v25 php83 matrix entry will hit the
JDK NPE on Ubuntu 24.04 runners; this is left as-is rather than
diverging from the supported platform version.
The earlier switch from 'adduser' to 'useradd --system' (when bumping
the base to debian:stable-slim) created the sugar user with a system
UID (100-999), while the PHP cron/apache images still use 'adduser'
which yields UID 1000. sugarfixpermissions then chowns files to the
system UID, leaving the cron container's UID-1000 sugar unable to
write inside /var/www/html/sugar — e.g., 'composer install' fails on
composer.lock with Permission denied, which prevents vendor/ from
being created and breaks tests that depend on autoload.
Removed one of the build status badges from the README.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants