sharpetronics.com/scripts/generate-new-jekyll-site.sh
oDinZu 577a22c731
All checks were successful
continuous-integration/drone/push Build is passing
add license to script
2022-12-13 22:10:05 -05:00

128 lines
4.4 KiB
Bash

#!/bin/sh
# This software creates a base Jekyll site with Strapi CMS integrations.
# Copyright (C) SharpeTronics LLC, 2013-PRESENT
# Author(s): SharpeTronics LLC
# License: GPLv3
# Version: 1.6
# This is Free Software released under GPLv3. Any misuse of this software
# will be followed up with GPL enforcement via Software Freedom Law Center:
# https://www.softwarefreedom.org/
# If you incorporate or include any code from SharpeTronics LLC, your
# code must be licensed as GPLv3 (not GPLv2 or MIT)
# The GPLv3 software license applies to the code directly included in this source distribution.
# See the LICENSE & COPYING file for full information.
# Dependencies downloaded as part of the build process may be covered by other open-source licenses.
# We are open to granting a more permissive (such as MIT or Apache 2.0) license to SharpeTronics LLC,
# software on a *case-by-case* basis, for an agreed upon price. Please email
# info@sharpetronics.com.
# If you would like to contribute to this code, please follow GPLv3 guidelines.
# as an example, after making changes to the software (Called a Fork) and credit the original copyright holder as the creator with your credit added to theirs.
# run this script in the current directory you would like the site to be created in.
# requirements: bash; script works only in unix type environments.
# this script should be executed in the scripts/ directory.
# changes directory back into root directory
cd ..
# create base Jekyll site directory structure
mkdir -p ./assets/css/images
mkdir -p ./assets/icons
mkdir -p ./assets/images
mkdir -p ./assets/js
mkdir -p ./assets/webfonts
mkdir -p ./collections/_drafts
mkdir -p ./collections/_posts
mkdir -p ./collections/_products
mkdir -p ./_data
# these directories are for Strapi CMS integration
mkdir -p ./_data/authors
mkdir -p ./_data/posts
mkdir -p ./_data/products
mkdir -p ./_plugins
mkdir -p ./_includes
mkdir -p ./_layouts
mkdir -p ./pages/posts
mkdir -p ./pages/products
mkdir -p ./_scss
mkdir -p ./uploads/authors
# create default Jekyll root files with docker and drone ci support.
touch .drone.yml _config.yml robots.txt sitemap.xml COPYING Gemfile humans.txt LICENSE README.md .env .gitignore docker-compose.yml
# create scripts.sh for organization of each file with default data
#cd ./scripts/generate-new-site
#touch cat_drone.sh cat_config.sh cat_robots.sh cat_sitemap.sh cat_copying.sh cat_gemfile.sh cat_humans.sh cat_license.sh cat_readme.sh cat_env.sh cat_gitignore.sh cat_docker-compose.sh
# create default Jekyll _layouts
touch ./_layouts/default.html
touch ./_layouts/post.html
touch ./_layouts/posts.html
touch ./_layouts/product.html
touch ./_layouts/products.html
touch ./_layouts/page.html
touch ./_layouts/landing.html
# create default Jekyll _includes
touch ./_includes/head.html
touch ./_includes/header.html
touch ./_includes/footer.html
touch ./_includes/navigation.html
touch ./_includes/pagination.html
touch ./_includes/back-to-top.html
touch ./_includes/product_hero.html
touch ./_includes/product_rest.html
touch ./_includes/product_related.html
touch ./_includes/product_featured.html
touch ./_includes/author_card.html
touch ./_includes/sections.html
touch ./_includes/banner.html
touch ./_includes/product_category.html
# create default _data files with Strapi CMS integration
touch ./_data/menus.yml
touch ./_data/socials.yml
touch ./_data/global.yml
pwd
# add default contents to each file
cp -vf ./scripts/templates/* ./
# add default _data files
cp -vf ./scripts/templates/data/* ./_data/
# add default _layouts templates
cp -vf ./scripts/templates/layouts/* ./_layouts/
# add default _includes templates
cp -vf ./scripts/templates/includes/* ./_includes/
# _ _ _
# ___| |_ __ _ _ __ | |_ _ __ ___| | __
# / __| __/ _` | '__| | __| '__/ _ \ |/ /
# \__ \ || (_| | | | |_| | | __/ <
# |___/\__\__,_|_| \__|_| \___|_|\_\
# _______----_______
# ___---~~~~~.. ... .... ... ..~~~~~---___
# _ ==============================================
# __________________________ - .. .. _--~~~~~-------____-------~~~~~
#(______________________][__)____ -
# / /______---~~~.. .. ..~~-_~
# <_______________________________-
# ~~~~~~~-----__ __-
# ~~~~~~~~~~~
# U S S E N T E R P R I S E N C C - 1 7 0 1 - D