Skip to content

Commit

Permalink
#32: Fix nodejs version (#33)
Browse files Browse the repository at this point in the history
  • Loading branch information
kaklakariada authored Jun 27, 2023
1 parent 460b86e commit 303e4c9
Show file tree
Hide file tree
Showing 20 changed files with 5,495 additions and 100 deletions.
4 changes: 4 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.sh text eol=lf

test/simple_exasol_setup/.terraform.lock.hcl linguist-generated=true
test/go.sum linguist-generated=true
45 changes: 8 additions & 37 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,52 +9,23 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- terraform_version: 0.12.31
sha256sum: "e5eeba803bc7d8d0cae7ef04ba7c3541c0abd8f9e934a5e3297bf738b31c5c6d"
- terraform_version: 1.0.11
sha256sum: "eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664"
terraform_version: ["1.5.1"]

steps:
- name: Checkout the repository
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Prepare bin directory
run: |
mkdir -p ${HOME}/bin
echo "${HOME}/bin/" >> $GITHUB_PATH
- name: Install shellcheck
run: |
wget -O shellcheck-stable.tar.xz "https://github.com/koalaman/shellcheck/releases/download/stable/shellcheck-stable.linux.x86_64.tar.xz"
echo "754516e4e6927b1b83417dcbc4fffe43acfc12716f8d789ed0952ad4d976d0bc shellcheck-stable.tar.xz" | sha256sum -c
tar -xvf shellcheck-stable.tar.xz
cp shellcheck-stable/shellcheck ${HOME}/bin/
chmod +x ${HOME}/bin/shellcheck
rm -rf shellcheck-stable*
shellcheck --version
- name: Install terraform
run: |
wget -O terraform.zip "https://releases.hashicorp.com/terraform/${{ matrix.terraform_version }}/terraform_${{ matrix.terraform_version }}_linux_amd64.zip"
echo "${{ matrix.sha256sum }} terraform.zip" | sha256sum -c
unzip terraform.zip
rm -f terraform.zip
chmod +x terraform
mv terraform ${HOME}/bin/
terraform -v
uses: hashicorp/setup-terraform@v2
with:
terraform_version: ${{ matrix.terraform_version }}

- name: Install tflint
run: |
wget -O tflint.zip "https://github.com/wata727/tflint/releases/download/v0.33.1/tflint_linux_amd64.zip"
echo "312435bc332df0bd986346adb6819bac7b3918e8d3b2ada6a54cf6899753ad48 tflint.zip" | sha256sum -c
unzip tflint.zip
install tflint ${HOME}/bin/
chmod +x ${HOME}/bin/tflint
rm -rf tflint*
tflint -v
uses: terraform-linters/setup-tflint@v3
with:
tflint_version: v0.47.0

- name: Run CI Script
run: ./scripts/ci.sh
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,6 @@ terraform.tfplan
terraform.tfstate
.idea/
*.iml
.terraform.lock.hcl
venv/
.DS_Store
.terraform.lock.hcl
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ A [Terraform](https://www.terraform.io) module to create an [Exasol](https://www

## Prerequisites

- [terraform][terraform-install] version `>= 0.12`
- [terraform][terraform-install] version `>= 1.5.1`
- [aws-cli profile][aws-cli-profile] with administrative access
- [python3][python3-install]

Expand Down Expand Up @@ -188,14 +188,13 @@ The following configuration variables are available.

## Additional Information

- [Tests](test/README.md)
- [Changelog](doc/changes/changelog.md)
- [Developer Guide](doc/developers_guide/developers_guide.md)
- [Contribution guidelines](CONTRIBUTING.md)

[gh-release-badge]: https://img.shields.io/github/tag/exasol/terraform-aws-exasol.svg?label=latest
[gh-release-link]: https://github.com/exasol/terraform-aws-exasol/releases/latest
[terraform-version]: https://img.shields.io/badge/tf-%3E%3D0.12.0-blue.svg
[terraform-version]: https://img.shields.io/badge/tf-%3E=1.5.1-blue.svg
[terraform-install]: https://www.terraform.io/downloads.html
[aws-cli]: https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html
[aws-cli-profile]: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html
[python3-install]: https://www.python.org/downloads/
9 changes: 7 additions & 2 deletions doc/changes/changes_1.0.3.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
# terraform-aws-exasol 1.0.3, released 2022-??-??
# terraform-aws-exasol 1.0.3, released 2023-06-27

Code name:
Code name: Fix deployment

## Summary

This release updates the NodeJS version for Lambdas used by the CloudFormation template during deployment.

Starting with this version terraform-aws-exasol is tested with Terraform 1.5.1. We recommend using the same version.

## Bug Fixes

- #29: Added name to workflow files with matrix builds
- #32: Fixed nodejs version in CF template
36 changes: 36 additions & 0 deletions doc/developers_guide/developers_guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Developer Guide

## CI Tests

The CI build runs smoke tests and static code analysis. This requires Terraform and [tflint](https://github.com/terraform-linters/tflint) to be installed.

Run the build with the following command:

```sh
./scripts/ci.sh
```

## System Tests

System tests for deploying the Exasol Terraform module are located in the `test` directory.

### Running System Tests

* Install Terraform and Go
* Get an Exasol license and store it as `test/simple_exasol_setup/exasolution.lic`
* Create the file `test/simple_exasol_setup/terraform.tfvars` and fill in:
```
owner = "<YOUR_EMAIL>"
aws_profile = "<AWS PROFILE TO USE>"
```
* Run
```sh
cd test
go test --timeout 2h
```

## Publishing to Terraform Registry

To publish the module to the Terraform registry create a release in the GitHub repository.

The new version will automatically be available at [exasol/exasol/aws](https://registry.terraform.io/modules/exasol/exasol/aws/latest) in the registry.
3 changes: 1 addition & 2 deletions main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ resource "aws_cloudformation_stack" "exasol_cluster" {
capabilities = [
"CAPABILITY_IAM"]
on_failure = "DELETE"
template_url = "https://exasol-cf-templates.s3.eu-central-1.amazonaws.com/cloudformation_template_v0.0.3.yml"

template_url = "https://exasol-cf-templates.s3.eu-central-1.amazonaws.com/cloudformation_template_v1.0.3.yml"
parameters = {
DBSystemName = var.database_name
DBPassword = var.sys_user_password
Expand Down
11 changes: 1 addition & 10 deletions release_config.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,3 @@
release-platforms:
- GitHub
- Community
community-tags:
- AWS
- Exasol
- Terraform
- Intrastructure-as-Code
community-project-name: Terraform AWS Exasol
community-project-description: |
The Terraform AWS Exasol module is a Terraform module that allows you to create an Exasol cluster on AWS using [Terraform](https://www.terraform.io/).
By that you can define your Exasol cluster infrastructure as code.
language: Generic
2 changes: 1 addition & 1 deletion scripts/ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ run_terraform_validate () {
}

run_tflint () {
tflint .
tflint --chdir=.
}

run_clean_worktree_check () {
Expand Down
Loading

0 comments on commit 303e4c9

Please sign in to comment.