Page MenuHomeDevCentral

Fetch and extract released PHP source code
ClosedPublic

Authored by dereckson on Oct 16 2018, 23:12.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Nov 19, 05:41
Unknown Object (File)
Sat, Nov 16, 08:10
Unknown Object (File)
Sat, Nov 16, 07:49
Unknown Object (File)
Tue, Nov 12, 23:31
Unknown Object (File)
Sun, Nov 10, 08:54
Unknown Object (File)
Fri, Nov 8, 15:57
Unknown Object (File)
Wed, Nov 6, 22:20
Unknown Object (File)
Wed, Nov 6, 00:02
Subscribers
None

Details

Summary

A PHP custom build starts with some source code.

When the build is for a released version, it's as simple as
decompress an archive. Version and hash in pillar.

As Jinja doesn't support dictionary expansion, the pure
Python state renderer is used here, to see if it's viable
to avoid the proliferation of read-pillar execution modules.

Ref T1469

Test Plan

salt-call --local state.sls roles/webserver-legacy/php-builder

Diff Detail

Repository
rOPS Nasqueron Operations
Lint
Lint Passed
Unit
No Test Coverage
Branch
php5 (branched from master)
Build Status
Buildable 3016
Build 3264: arc lint + arc unit

Event Timeline

dereckson created this revision.

Extract an unique set of versions from pillar

dereckson retitled this revision from Extract PHP source code from releases to Fetch and extract released PHP source code.Oct 17 2018, 11:55

More coherent presentation

Hey, jinja doesn't like multiline

Set in php_realase_versions

Fix Python datastructures

Switch to Python renderer

This revision is now accepted and ready to land.Oct 17 2018, 16:22
$ utils/dump-py-state.py roles/webserver-legacy/php-builder/source.sls
/opt/php:
  file.directory:
  - user: builder
/opt/php/archives:
  file.directory:
  - user: builder
/opt/php/archives/php-5.6.38.tar.bz2:
  file.managed:
  - source: http://fr2.php.net/get/php-5.6.38.tar.bz2/from/this/mirror
  - source_hash: d65b231bbdd63be4439ef5ced965cfd63e62983429dbd4dfcfb49981593ebc03
  - user: builder
/opt/php/php56:
  file.directory:
  - user: builder
php_build_php56:
  cmd.run:
  - name: tar xjf /opt/php/archives/php-5.6.38.tar.bz2 --strip-components=1 -C /opt/php/php56
  - user: builder
  - creates: /opt/php/php56/configure.in
This revision was automatically updated to reflect the committed changes.