Page MenuHomeDevCentral

No OneTemporary

diff --git a/roles/webserver-legacy/php-builder/source.sls b/roles/webserver-legacy/php-builder/source.sls
index 5b690b0..23cdd5a 100644
--- a/roles/webserver-legacy/php-builder/source.sls
+++ b/roles/webserver-legacy/php-builder/source.sls
@@ -1,78 +1,80 @@
#!py
# -------------------------------------------------------------
# Salt — Compile custom PHP builds
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
# Created: 2018-10-16
# License: Trivial work, not eligible to copyright
# -------------------------------------------------------------
# -------------------------------------------------------------
# Builds and versions helper methods
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def get_release_builds():
return {name: build
for (name, build) in __pillar__["php_custom_builds"].items()
if build["mode"] == "release"}
def get_release_versions():
versions = [(build['version'], build['hash'])
for build in get_release_builds().values()]
return set(versions)
-def get_build_directories():
- return ["/opt/php/_builds/" + build['version']
- for build in get_release_builds().values()]
+def get_archive_path(version):
+ return "/opt/php/archives/php-" + version + ".tar.bz2"
-def get_archive_path(version):
- return "/opt/php/_archives/php-" + version + ".tar.bz2"
+def get_build_directories():
+ return ["/opt/php/" + build for build in __pillar__["php_custom_builds"]]
def get_extract_archive_command(archive, directory):
return "tar xjf " + archive + " --strip-components=1 -C " + directory
# -------------------------------------------------------------
# Configuration provider
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def run():
config = {}
builder_user = 'builder'
- directories_to_create = ['/opt/php', '/opt/php/_archives', '/opt/php/_builds']
+ directories_to_create = ['/opt/php', '/opt/php/archives']
# Task: create directories
directories_to_create.extend(get_build_directories())
for directory in directories_to_create:
config[directory] = {'file.directory': [{'user': builder_user}]}
# Task: fetch archives
- # Task: extract archives to build directories
for version, archive_hash in get_release_versions():
archive = get_archive_path(version)
url = "http://fr2.php.net/get/php-" + version + ".tar.bz2/from/this/mirror"
- directory = "/opt/php/_builds/" + version
- command = get_extract_archive_command(archive, directory)
config[archive] = {'file.managed': [
{'source': url},
{'source_hash': archive_hash},
{'user': builder_user},
]}
- config["php_build_" + version] = {'cmd.run': [
+ # Task: extract archives to build directories
+ for build_name, build in get_release_builds().items():
+ archive = get_archive_path(build['version'])
+ directory = "/opt/php/" + build_name
+ command = get_extract_archive_command(archive, directory)
+
+ config["php_build_" + build_name] = {'cmd.run' : [
{'name': command},
{'user': builder_user},
{'creates': directory + "/configure.in"},
]}
return config

File Metadata

Mime Type
text/x-diff
Expires
Mon, Nov 25, 07:22 (1 d, 14 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2257650
Default Alt Text
(3 KB)

Event Timeline