train-pwsh 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dee3811f1e76e743dad03b5fbda0ef38f5ce9f0d0503a2634d109674a4f80c1e
4
- data.tar.gz: f3e63fb43c571e462a9a253968daece5d18d8083c21280c3749104a521407d8b
3
+ metadata.gz: 89e3a18c81cf9e11a8c44fab1922b73b7b131d79bc06e880f2465b0fa1855f86
4
+ data.tar.gz: 0eed86dd58bfeaa57ae2d838f24f8c1b29f518f012c55638f393e5b58fc0b3dd
5
5
  SHA512:
6
- metadata.gz: b4a6938760a23e90e50904f7953d39d2706ba7b4b5f6db48f91a1308dea5ce8391c50def5aeed255e9d3eac9eacc28c4b975fc019e187389ac616a302a805486
7
- data.tar.gz: 33914e811691e4b1f284b2e33d49515808e0a19925795935485484278f9df90e0607bee8898efcdc1a81d185183325f3b495b395892a72c84da8f121cd28769c
6
+ metadata.gz: c03186763343739f788179381799a58b817012ae2d364de5c8a72f6d356950c25a8953449ef17343486c63cace359efba0548f5394d78c2e8f047154defb5edf
7
+ data.tar.gz: 9ac43a9c24bdf4d9612f323507ec58ff8579ec7c7b34a533ee04c3c9f6784f0f4d174ca5a58785cc584b578f94fcdfb4ca3c97bceee4941e3c5db0a1ed98338f
data/README.md CHANGED
@@ -1,17 +1,18 @@
1
1
  # Train::Pwsh
2
2
 
3
- A train-pwsh connection has 7 fields that are needed for authentication, which are listed below:
4
- - client_id
5
- - tenant_id
6
- - client_secret
7
- - certificate_path
8
- - certificate_password
9
- - organization
10
- - sharepoint_admin_url
11
-
12
- These fields need to be defined in the config file stored at this directory: `~/.inspec/config.json`. Particularly, under the `credentials` key of the json file, create a `pwsh` key with the value being another dictionary. This dictionary should have a key named `pwsh-options` with the value being another dictionary. This dictionary should contain the names of the seven fields above as well as their values. Please refer to this [link](https://origin.inspec.io/docs/reference/config/) for more detailed instructions.
13
-
14
- On top of this, environment variables may need to be defined for some of these seven fields if they are to be used elsewhere in the profile as inputs. The README for the profile will specify which ones need to be stored as environment variables.
3
+ A train-pwsh connection has eight fields that are needed for authentication, which are listed below:
4
+ - client_id (id of client)
5
+ - tenant_id (id of tenant)
6
+ - client_secret (secret key for client)
7
+ - certificate_path (path on machine where authentication certificate is stored)
8
+ - certificate_password (password for certificate)
9
+ - organization (organization domain)
10
+ - sharepoint_admin_url (sharepoint url for admin)
11
+ - pwsh_path (path on machine where the powershell executable is stored)
12
+
13
+ These fields need to be defined in the config file stored at this directory: `~/.inspec/config.json`. Particularly, under the `credentials` key of the json file, create a `pwsh` key with the value being another dictionary. This dictionary should have a key named `pwsh-options` with the value being another dictionary. This dictionary should contain the names of the eight fields above as well as their values. Please refer to this [link](https://origin.inspec.io/docs/reference/config/) for more detailed instructions.
14
+
15
+ On top of this, environment variables may need to be defined for some of these eight fields if they are to be used elsewhere in the profile as inputs. The README for the profile will specify which ones need to be stored as environment variables.
15
16
 
16
17
  To set an environment variable on Mac, go to the `zschrc` file located at `~/.zschrc` and enter in the following syntax: `export VARIABLE_NAME='insert_value'`
17
18
 
@@ -50,8 +50,11 @@ module TrainPlugins
50
50
  #Instance variables that store the necessary authentication credentials
51
51
  #@pwsh_session_graph_exchange = ::Pwsh::Manager.instance('/opt/homebrew/bin/pwsh', ['-NoLogo'])
52
52
  #@pwsh_session_teams_pnp = ::Pwsh::Manager.instance('/opt/homebrew/bin/pwsh', [])
53
- @pwsh_session_graph_exchange = @options.delete(:graph_exchange_session)
54
- @pwsh_session_teams_pnp = @options.delete(:teams_pnp_session)
53
+ @pwsh_path = @options.delete(:pwsh_path)
54
+ #@pwsh_session_graph_exchange = @options.delete(:graph_exchange_session)
55
+ #@pwsh_session_teams_pnp = @options.delete(:teams_pnp_session)
56
+ @pwsh_session_graph_exchange = ::Pwsh::Manager.instance("#{@pwsh_path}", ['-NoLogo'])
57
+ @pwsh_session_teams_pnp = ::Pwsh::Manager.instance("#{@pwsh_path}", [])
55
58
  @client_id = @options.delete(:client_id)
56
59
  @tenant_id = @options.delete(:tenant_id)
57
60
  @client_secret = @options.delete(:client_secret)
@@ -20,9 +20,6 @@ module TrainPlugins
20
20
  #option :certificate_password, required: true, default: proc { ENV['CERTIFICATE_PASSWORD'] } unless ENV['CERTIFICATE_PASSWORD'].empty?
21
21
  #option :organization, required: true, default: proc { ENV['ORGANIZATION'] } unless ENV['ORGANIZATION'].empty?
22
22
  #option :sharepoint_admin_url, required: true, default: proc { ENV['SHAREPOINT_ADMIN_URL'] } unless ENV['SHAREPOINT_ADMIN_URL'].empty?
23
-
24
- option :graph_exchange_session, required: true, default: proc { ::Pwsh::Manager.instance(ENV['PWSH_PATH'], ['-NoLogo']) }
25
- option :teams_pnp_session, required: true, default: proc { ::Pwsh::Manager.instance(ENV['PWSH_PATH'], []) }
26
23
 
27
24
  # The options passed to this are undocumented and rarely used.
28
25
  def connection(_instance_opts = nil)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Train
4
4
  module Pwsh
5
- VERSION = "0.1.1"
5
+ VERSION = "0.1.2"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: train-pwsh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sujay Kandwal
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-12-21 00:00:00.000000000 Z
11
+ date: 2024-12-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: train