gnu: ansible: Update to 4.4.0.
* gnu/packages/admin.scm (ansible): Update to 4.4.0. [native-inputs]: Remove field. [inputs]: Likewise. [arguments]: Likewise. [propagated-inputs]: New field. [native-search-paths]: New search path. [description]: Update description.
This commit is contained in:
		
							parent
							
								
									83bf3c63da
								
							
						
					
					
						commit
						019bf96300
					
				
					 1 changed files with 21 additions and 52 deletions
				
			
		| 
						 | 
					@ -2600,66 +2600,35 @@ provides the following commands:
 | 
				
			||||||
(define-public ansible
 | 
					(define-public ansible
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "ansible")
 | 
					    (name "ansible")
 | 
				
			||||||
    (version "2.9.18")
 | 
					    (version "4.4.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
       (uri (pypi-uri "ansible" version))
 | 
					       (uri (pypi-uri "ansible" version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32 "0g6rsnh02zq5nizamgakl2wvgz7hk1lpnjn9akldrcpa55vygzjm"))))
 | 
					        (base32 "031n22j0lsmh69x6i6gkva81j68b4yzh1pbg3q2h4bknl85q46ag"))))
 | 
				
			||||||
    (build-system python-build-system)
 | 
					    (build-system python-build-system)
 | 
				
			||||||
    (native-inputs
 | 
					    (propagated-inputs
 | 
				
			||||||
     `(("python-bcrypt" ,python-bcrypt)
 | 
					     `(("ansible-core" ,ansible-core)))
 | 
				
			||||||
       ("python-pynacl" ,python-pynacl)
 | 
					    ;; The Ansible collections are found by ansible-core via PYTHONPATH; the
 | 
				
			||||||
       ("python-httplib2" ,python-httplib2)
 | 
					    ;; following search path ensures that they are found even when Python is
 | 
				
			||||||
       ("python-passlib" ,python-passlib)
 | 
					    ;; not present in the profile.
 | 
				
			||||||
       ("python-nose" ,python-nose)
 | 
					    (native-search-paths
 | 
				
			||||||
       ("python-mock" ,python-mock)
 | 
					     ;; XXX: Attempting to use (package-native-search-paths python)
 | 
				
			||||||
       ("python-jinja2" ,python-jinja2)
 | 
					     ;; here would cause an error about python being an unbound
 | 
				
			||||||
       ("python-pyyaml" ,python-pyyaml)
 | 
					     ;; variable in the tests/cpan.scm test.
 | 
				
			||||||
       ("python-paramiko" ,python-paramiko)))
 | 
					     (list (search-path-specification
 | 
				
			||||||
    (inputs
 | 
					            (variable "PYTHONPATH")
 | 
				
			||||||
     `(("python-cryptography" ,python-cryptography)
 | 
					            (files (list "lib/python3.8/site-packages")))))
 | 
				
			||||||
       ("python-jinja2" ,python-jinja2)
 | 
					 | 
				
			||||||
       ("python-pyyaml" ,python-pyyaml)
 | 
					 | 
				
			||||||
       ("python-paramiko" ,python-paramiko)))
 | 
					 | 
				
			||||||
    (arguments
 | 
					 | 
				
			||||||
     `(#:phases
 | 
					 | 
				
			||||||
       (modify-phases %standard-phases
 | 
					 | 
				
			||||||
         ;; Several ansible commands (ansible-config, ansible-console, etc.)
 | 
					 | 
				
			||||||
         ;; are just symlinks to a single ansible executable. The ansible
 | 
					 | 
				
			||||||
         ;; executable behaves differently based on the value of
 | 
					 | 
				
			||||||
         ;; sys.argv[0]. This does not work well with our wrap phase, and
 | 
					 | 
				
			||||||
         ;; therefore the following two phases are required as a workaround.
 | 
					 | 
				
			||||||
         (add-after 'unpack 'hide-wrapping
 | 
					 | 
				
			||||||
           (lambda _
 | 
					 | 
				
			||||||
             ;; Overwrite sys.argv[0] to hide the wrapper script from it.
 | 
					 | 
				
			||||||
             (substitute* "bin/ansible"
 | 
					 | 
				
			||||||
               (("import traceback" all)
 | 
					 | 
				
			||||||
                (string-append all "
 | 
					 | 
				
			||||||
import re
 | 
					 | 
				
			||||||
sys.argv[0] = re.sub(r'\\.([^/]*)-real$', r'\\1', sys.argv[0])
 | 
					 | 
				
			||||||
")))
 | 
					 | 
				
			||||||
             #t))
 | 
					 | 
				
			||||||
         (add-after 'install 'replace-symlinks
 | 
					 | 
				
			||||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
					 | 
				
			||||||
             ;; Replace symlinks with duplicate copies of the ansible
 | 
					 | 
				
			||||||
             ;; executable.
 | 
					 | 
				
			||||||
             (let ((out (assoc-ref outputs "out")))
 | 
					 | 
				
			||||||
               (for-each
 | 
					 | 
				
			||||||
                (lambda (subprogram)
 | 
					 | 
				
			||||||
                  (delete-file (string-append out "/bin/ansible-" subprogram))
 | 
					 | 
				
			||||||
                  (copy-file (string-append out "/bin/ansible")
 | 
					 | 
				
			||||||
                             (string-append out "/bin/ansible-" subprogram)))
 | 
					 | 
				
			||||||
                (list "config" "console" "doc" "galaxy"
 | 
					 | 
				
			||||||
                      "inventory" "playbook" "pull" "vault")))
 | 
					 | 
				
			||||||
             #t)))))
 | 
					 | 
				
			||||||
    (home-page "https://www.ansible.com/")
 | 
					    (home-page "https://www.ansible.com/")
 | 
				
			||||||
    (synopsis "Radically simple IT automation")
 | 
					    (synopsis "Radically simple IT automation")
 | 
				
			||||||
    (description "Ansible is a radically simple IT automation system.  It
 | 
					    (description "Ansible aims to be a radically simple IT automation system.
 | 
				
			||||||
handles configuration management, application deployment, cloud provisioning,
 | 
					It handles configuration management, application deployment, cloud
 | 
				
			||||||
ad hoc task execution, and multinode orchestration---including trivializing
 | 
					provisioning, ad-hoc task execution, network automation, and multi-node
 | 
				
			||||||
things like zero-downtime rolling updates with load balancers.")
 | 
					orchestration.  Ansible facilitates complex changes like zero-downtime rolling
 | 
				
			||||||
 | 
					updates with load balancers.  This package provides a curated set of
 | 
				
			||||||
 | 
					community-maintained Ansible collections, which contain playbooks, roles,
 | 
				
			||||||
 | 
					modules and plugins that extend Ansible.")
 | 
				
			||||||
    (license license:gpl3+)))
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public debops
 | 
					(define-public debops
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Reference in a new issue