Import devserver userland-software unit from Nasqueron
[wynter-salt-workstation.git] / roles / workstation / userland-software / psysh.sls
blobdb0c95df1869ca7f9eb265ab36657b0f035429f7
1 #   -------------------------------------------------------------
2 #   Salt — Provision dev software
3 #   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
4 #   Project:        Nasqueron
5 #   Created:        2017-11-03
6 #   License:        Trivial work, not eligible to copyright
7 #   -------------------------------------------------------------
9 {% from "map.jinja" import dirs with context %}
11 #   -------------------------------------------------------------
12 #   Prepare for installation
13 #   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
15 /usr/local/share/psysh:
16   file.directory:
17     - dir_mode: 755
19 #   -------------------------------------------------------------
20 #   Fetch software and PHP manual
21 #   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
23 psysh_software:
24   archive.extracted:
25     - name: /opt/psysh
26     - enforce_toplevel: False
27     - source: https://github.com/bobthecow/psysh/releases/download/v0.8.13/psysh-v0.8.13.tar.gz
28     - source_hash: 4436931f4baeac0b6709d89efe5a517dbcdfb3335e90d9bf5deb83207f90e293
30 /usr/local/share/psysh/php_manual.sqlite:
31   file.managed:
32     - source: http://psysh.org/manual/en/php_manual.sqlite
33     - skip_verify: True
34     - require:
35       - file: /usr/local/share/psysh
37 #   -------------------------------------------------------------
38 #   Install binary
39 #   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
41 psysh_permissions:
42   file.managed:
43     - name: /opt/psysh/psysh
44     - mode: 755
45     - require:
46       - archive: psysh_software
48 {{ dirs.bin }}/psysh:
49   file.symlink:
50     - target: /opt/psysh/psysh
51     - require:
52       - file: psysh_permissions