diff mbox series

[bug#68990,20/28] gnu: Add ruby-vagrant-spec.

Message ID 52a891fd83d61070ee77b27ab2c62527ea0a5379.1707383695.git.h.goebel@crazy-compilers.com
State New
Headers show
Series Some ruby packages | expand

Commit Message

Hartmut Goebel Feb. 8, 2024, 9:35 a.m. UTC
* gnu/packages/virtualization.scm (ruby-vagrant-spec): New variable.
---
 gnu/packages/virtualization.scm | 37 +++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)
diff mbox series

Patch

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 91f7a151a6..59cb2a6e58 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -31,6 +31,7 @@ 
 ;;; Copyright © 2023 Juliana Sims <juli@incana.org>
 ;;; Copyright © 2023 Ahmad Draidi <a.r.draidi@redscript.org>
 ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2023 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -123,6 +124,7 @@  (define-module (gnu packages virtualization)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages selinux)
@@ -143,6 +145,7 @@  (define-module (gnu packages virtualization)
   #:use-module (guix build-system go)
   #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system ruby)
   #:use-module (guix build-system trivial)
   #:use-module (guix download)
   #:use-module (guix gexp)
@@ -2311,6 +2314,40 @@  (define-public skopeo
 @end enumerate")
     (license license:asl2.0)))
 
+(define-public ruby-vagrant-spec
+  (package
+    (name "ruby-vagrant-spec")
+    (version "0.0.6")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "vagrant_spec" version))
+              (sha256
+               (base32
+                "1bkzz3mj7kzsv6k0ii8w31cgkpiqw3wvmvv2c6rknsavqqnagb4g"))))
+    (build-system ruby-build-system)
+    ;; (native-inputs (list ruby-rubocop ruby-vagrant-spec-helper-basic))
+    (propagated-inputs (list ruby-coveralls ruby-serverspec ruby-dep))
+    (arguments
+     (list
+      #:tests? #f  ;; tests require vagrant
+      ;; target 'test' includes 'cops' and running some ansible-playbook
+      #:test-target "unit"
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch
+            (lambda _
+              (substitute* "Rakefile"
+                (("Bundler::GemHelper") "require 'bundler'\nBundler::GemHelper"))))
+          (add-before 'check 'prepare-check
+            (lambda _
+              (setenv "HOME" "/tmp"))))))
+    (synopsis "Specification and tests for Vagrant")
+    (description "@code{vagrant-spec} is a both a specification of how Vagrant
+and its various components should behave as well as a library of testing
+helpers that let you write your own unit and acceptance tests for Vagrant.")
+    (home-page "https://github.com/hashicorp/vagrant-spec")
+    (license license:mpl2.0)))
+
 (define-public python-vagrant
   (package
     (name "python-vagrant")