@@ -66,6 +66,96 @@ To use this repository you need the following:
6666
6767# # Advanced usage
6868
69+ # ## Directory structure
70+
71+ ` ` ` text
72+ ├── .devcontainer # PDK: vscode devcontainer settings
73+ │ ├── Dockerfile
74+ │ ├── README.md
75+ │ └── devcontainer.json
76+ ├── .editorconfig # See https://editorconfig.org/
77+ ├── .fixtures.yml # PDK: fixtures config
78+ ├── .gitattributes # PDK: git attributes config
79+ ├── .gitignore # PDK: files to ignore in git
80+ ├── .gitlab-ci.yml # PDK: Gitlab CI config
81+ ├── .pdkignore # PDK: files to ignore in module tarball
82+ ├── .puppet-lint.rc # PDK: puppet-lint config
83+ ├── .rspec # PDK: rspec config
84+ ├── .rubocop.yml # PDK: rubocop config
85+ ├── .sync.yml # PDK: pdk-templates config
86+ ├── .travis.yml # PDK: Travis CI config
87+ ├── .vscode # PDK: VSCode config
88+ │ └── extensions.json
89+ ├── .yardopts # PDK: YARD config (puppet strings)
90+ ├── CHANGELOG.md # PDK: ChangeLog template
91+ ├── Gemfile # PDK: Gemfile
92+ ├── LICENSE # Apache 2.0 License text
93+ ├── README.md # This README
94+ ├── Rakefile # PDK: Rake config
95+ ├── appveyor.yml # PDK: AppVeyor CI config
96+ ├── bolt-project.yaml # Bolt: main Bolt config
97+ ├── data # Hiera data directory
98+ │ ├── common.yaml # Common Hiera data goes here
99+ │ └── nodes # Per-node Hiera data goes here
100+ │ └── example1.yaml # Hiera data for the ` example1` host
101+ ├── environment.conf # Puppet environment config
102+ ├── hiera.yaml # Hiera's hierarchy definition
103+ ├── manifests
104+ │ └── site.pp # The "main" manifest (Puppet entry-point)
105+ ├── metadata.json # PDK: Puppet module metadata
106+ ├── pdk.yaml # PDK: PDK config
107+ ├── plans # Bolt: plans goes here
108+ │ └── apply.pp # Puppet Bolt plan to apply your manifests
109+ ├── rakelib
110+ │ └── beaker-all.rake # Rake task to run acceptance tests for every node
111+ ├── site-modules # Place to store your local modules
112+ │ ├── hiera_classifier # The Hiera classifier module
113+ │ │ └── manifests
114+ │ │ └── init.pp
115+ │ ├── profile # The profile module
116+ │ │ ├── data
117+ │ │ │ ├── Ubuntu.yaml # Hiera data for Ubuntu OS
118+ │ │ │ └── common.yaml # Common Hiera data
119+ │ │ ├── functions
120+ │ │ │ └── banner.pp # Profile::Banner example function
121+ │ │ ├── hiera.yaml # Module's Hiera config
122+ │ │ ├── manifests
123+ │ │ │ ├── common
124+ │ │ │ │ └── packages.pp # Profile::Common::Packages example class
125+ │ │ │ ├── common.pp # Profile::Common example class
126+ │ │ │ └── example.pp # Profile::Example example class
127+ │ │ └── types
128+ │ │ └── ensure.pp # Profile::Ensure example type alias
129+ │ └── role # The role module
130+ │ └── manifests
131+ │ ├── example.pp # Role::Example role definition
132+ │ └── unassigned.pp # Role::Unassigned role definition
133+ └── spec # Unit and acceptance tests directory
134+ ├── acceptance # Beaker acceptance tests goes here
135+ │ ├── example1_spec.rb # `example1` node beaker-rspec spec
136+ │ └── nodesets # Node definitions for Beaker acceptance tests
137+ │ └── example1.yml # `example1` node definition
138+ ├── classes # rspec-puppet class tests goes here
139+ │ └── profile
140+ │ ├── common
141+ │ │ └── packages_spec.rb # Profile::Common::Package class unit tests
142+ │ └── example_spec.rb # Profile::Example class unit tests
143+ ├── default_facts.yml # PDK: default facts for unit testing
144+ ├── functions
145+ │ └── profile
146+ │ └── banner_spec.rb # Profile::Banner function unit test
147+ ├── defines # rspec-puppet defined resource tests goes here
148+ ├── fixtures # rspec-puppet fixtures
149+ ├── hosts # rspec-puppet host tests goes here
150+ │ └── example1_spec.rb # `example1` host test
151+ ├── spec_helper.rb # PDK: unit test rspec helper
152+ ├── spec_helper_acceptance.rb # Acceptance test rspec helper
153+ ├── spec_helper_local.rb # unit test rspec helper (local additions)
154+ └── type_aliases
155+ └── profile
156+ └── ensure_spec.rb # Profile::Ensure type alias unit test
157+ ```
158+
69159### Hiera classifier
70160
71161... to be written...
0 commit comments