Skip to content

Commit

Permalink
Terraform Framework Initialization
Browse files Browse the repository at this point in the history
Initialize PowerScale client and provider
Initialize github template and workflow
Initialize readme file and about directory doc
Autogenerate terraform docs
  • Loading branch information
NavisJ committed Jul 7, 2023
1 parent f0505a0 commit d8adae5
Show file tree
Hide file tree
Showing 40 changed files with 2,633 additions and 18 deletions.
24 changes: 24 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# CODEOWNERS
#
# documentation for this file can be found at:
# https://help.github.com/en/articles/about-code-owners

# These are the default owners for the code and will
# be requested for review when someone opens a pull request.
# order is alphabetical for easier maintenance.
#
# Akash Shendge (shenda1)
# Connar Doria (doriac11)
# Forrest Xia (forrestxia)
# Haiming Tan (tanh17)
# Jason Jin (NavisJ)
# Nikita Joshi (nikitajoshi1)
# Peter Cao (P-Cao)
# Ray Liu (RayLiu7)
# Shekhar Joshi (shekhar-j)
# Tao He (taohe1012)
# Varun Chinta (varunchinta)
# Yiming Bao (baoy1)

# for all files:
* @shenda1 @forrestxia @baoy1 @taohe1012 @P-Cao @tanh17 @NavisJ @doriac11 @varunchinta @nikitajoshi1 @shekhar-j @RayLiu7
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/ask_a_question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: 💬 Ask a question
about: Ask usage questions here
title: "[QUESTION]:"
labels: type/question
assignees: ''

---
### How can the team help?

**Details: ?**
122 changes: 122 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
---
name: 🐛 Bug report
description: Create a report to help us improve.
title: "[BUG]: "
labels: ["type/bug", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thank you for taking the time to create this bug report. To better help us investigate this bug, provide the following information.
- type: textarea
id: bug-description
attributes:
label: Bug Description
description: Provide a clear and concise description about the bug.
validations:
required: true
- type: input
id: component
attributes:
label: Resource or DataSource Name
description: Enter the Resource or DataSource Name.
placeholder: resource_template
validations:
required: true
- type: input
id: terraform
attributes:
label: Terraform Version
description: Enter the Terraform version.
placeholder: |
Terraform 1.3.2
validations:
required: true
- type: input
id: go
attributes:
label: go Version
description: Enter the go version.
placeholder: |
go 1.19
validations:
required: true
- type: textarea
id: unisphereversion
attributes:
label: Unisphere Version
description: Enter the Unisphere API version in which the bug is observed.
placeholder: |
10.0
validations:
required: true
- type: textarea
id: os
attributes:
label: Operating System
description: Enter the operating system and version in which the bug is observed.
placeholder: |
Red Hat Enterprise Linux (RHEL) 8.5 and 8.4
SUSE Linux Enterprise Server (SLES) 15 SP2 and 15 SP1
Ubuntu 20.04.2 and 20.04.1
validations:
required: true
- type: textarea
id: terraformfile
attributes:
label: Terraform File Used
description: Enter the Terraform File data used to run.
validations:
required: true
- type: textarea
id: files
attributes:
label: Logs
description: Copy any relevant log output here or drop the log files in the text area.
Please be sure to remove all sensitive data such as IP addresses, host names, credentials, etc.
validations:
required: true
- type: textarea
id: steps
attributes:
label: Steps to Reproduce
description: Provide the steps to reproduce this bug.
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected Behavior
description: Enter the clear and concise description about the expected behaviour.
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual Behavior
description: Enter the clear and concise description about the actual behaviour.
validations:
required: true
- type: textarea
id: screenshots
attributes:
label: Screenshots
description: Drop any relevant screenshots in the text area.
validations:
required: false
- type: input
id: ainfo
attributes:
label: Additional Information
description: Provide any additional information about the bug.
validations:
required: false
- type: markdown
attributes:
value: |
Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/)
to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or other comments that do not add relevant new information or questions,
they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Maintainers mailing list
alias: [email protected]
about: Please use maintainers contact for questions and queries.
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
name: 🚀 Feature Request
about: Suggest an idea for this project
title: "[FEATURE]:"
labels: type/feature-request, needs-triage
assignees: ''
---
**Describe the solution you'd like**
Provide a clear and concise description about the new feature request.

**Describe alternatives you've considered**
Provide a clear and concise description of any alternative solutions or features that you have considered.

**Additional context**
Describe any relevant context or add any relevant screenshots about the feature request.

**Community Note**

* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/)
to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or other comments that do not add relevant new information or questions,
they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment
50 changes: 50 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Description
A few sentences describing the overall goals of the pull request's commits.

# GitHub Issues
List the GitHub issues impacted by this PR:

| GitHub Issue # |
| -------------- |
| |

# ISSUE TYPE
<!--- Pick one below and delete the rest -->
- Bugfix Pull Request
- Docs Pull Request
- Feature Pull Request
- Test Pull Request

##### RESOURCE OR DATASOURCE NAME
<!--- Write the short name of the resource or datasource below -->

##### OUTPUT
<!--- Paste the functionality test result below -->
```paste below
```
##### ADDITIONAL INFORMATION
<!--- Include additional information to help people understand the change here -->
<!--- A step-by-step reproduction of the problem is helpful if there is no related issue -->

<!--- Paste verbatim command output below, e.g. before and after your change -->
```paste below
```
# Checklist:

- [ ] I have performed a self-review of my own code to ensure there are no formatting, vetting, linting, or security issues
- [ ] I have verified that new and existing unit tests pass locally with my changes
- [ ] I have not allowed coverage numbers to degenerate
- [ ] I have maintained at least 80% code coverage
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] I have maintained backward compatibility


# How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Please also list any relevant details for your test configuration

- [ ] Unit tests
- [ ] Acceptance tests
28 changes: 28 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<!--
Copyright (c) 2023 Dell Inc., or its subsidiaries. All Rights Reserved.
Licensed under the Mozilla Public License Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://mozilla.org/MPL/2.0/
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->


# Security Policy
The repository is inspected for security vulnerabilities via gosec.

In addition to this, there are various security checks that get executed against a branch when a pull request is created/updated. Please refer to pull request for more information.

## Reporting a Vulnerability

Have you discovered a security vulnerability in this project?
We ask you to alert the maintainers by sending an email, describing the issue, impact, and fix - if applicable.
You can reach the Maintainers at [email protected]
101 changes: 101 additions & 0 deletions .github/workflows/terraform-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# This is a workflow with the following actions
#1. Check Go formatting, linting, vetting
#2. Check for forbidden words
#3. Build
#4. Go security
#5. Generate
#6. Malware Scanner


name: Terraform-main-CI

# Controls when the workflow will run
on:
# Triggers the workflow on pull request events
pull_request:
# Runs CI on every day (at 06:00 UTC)
schedule:
- cron: '0 6 * * *'
push:
branches: [ "main" ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Testing only needs permissions to read the repository contents.
permissions:
contents: read
env:
# Go language version to use for building. This value should also be updated
# in the testing workflow if changed.
GO_VERSION: '1.19'

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
code-check:
name: Check Go formatting, linting, vetting
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v3
- name: Run the formatter, linter, and vetter
uses: dell/common-github-actions/go-code-formatter-linter-vetter@main
with:
directories: ./...
sanitize:
name: Check for forbidden words
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v3
- name: Run the forbidden words scan
uses: dell/common-github-actions/code-sanitizer@main
with:
args: /github/workspace

build:
name: Build
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/setup-go@v3
with:
go-version: ${{ env.GO_VERSION }}
- uses: actions/checkout@v3
- run: go mod download
- run: go build -v .

go_security_scan:
name: Go security
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v3
- name: Run Go Security
uses: securego/gosec@master

generate:
runs-on: ubuntu-latest
name: Generate
steps:
- uses: actions/setup-go@v3
with:
go-version: ${{ env.GO_VERSION }}
- uses: actions/checkout@v3
- run: go generate
- name: git diff
run: |
git diff --compact-summary --exit-code || \
(echo; echo "Unexpected difference in directories after code generation. Run 'go generate ./...' command and commit."; exit 1)
malware_security_scan:
name: Malware Scanner
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v3
- name: Malware Scanner
uses: dell/common-github-actions/malware-scanner@main
with:
directories: .
options: -ri
Loading

0 comments on commit d8adae5

Please sign in to comment.