You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			41 lines
		
	
	
		
			936 B
		
	
	
	
		
			Bash
		
	
			
		
		
	
	
			41 lines
		
	
	
		
			936 B
		
	
	
	
		
			Bash
		
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# This scripts creates a new sample moduledir with required files
 | 
						|
# Run it like : ./new.sh my-module
 | 
						|
 | 
						|
MODULE_NAME=$1
 | 
						|
 | 
						|
# Check if module name is provided
 | 
						|
if [ -z "$MODULE_NAME" ]; then
 | 
						|
  echo "Usage: ./new.sh <module_name>"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
 | 
						|
# Create module directory and exit if it already exists
 | 
						|
if [ -d "$MODULE_NAME" ]; then
 | 
						|
  echo "Module with name $MODULE_NAME already exists"
 | 
						|
  echo "Please choose a different name"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
mkdir -p "${MODULE_NAME}"
 | 
						|
 | 
						|
# Copy required files from the sample module
 | 
						|
cp -r .sample/* "${MODULE_NAME}"
 | 
						|
 | 
						|
# Change to module directory
 | 
						|
cd "${MODULE_NAME}"
 | 
						|
 | 
						|
# Detect OS
 | 
						|
if [[ "$OSTYPE" == "darwin"* ]]; then
 | 
						|
  # macOS
 | 
						|
  sed -i '' "s/MODULE_NAME/${MODULE_NAME}/g" main.tf
 | 
						|
  sed -i '' "s/MODULE_NAME/${MODULE_NAME}/g" README.md
 | 
						|
else
 | 
						|
  # Linux
 | 
						|
  sed -i "s/MODULE_NAME/${MODULE_NAME}/g" main.tf
 | 
						|
  sed -i "s/MODULE_NAME/${MODULE_NAME}/g" README.md
 | 
						|
fi
 | 
						|
 | 
						|
# Make run.sh executable
 | 
						|
chmod +x run.sh
 |