Skip to content

Commit

Permalink
3 dev 2024 01 17 (#10)
Browse files Browse the repository at this point in the history
* Make tripal daemon mandatory since it is needed for blast test

* Exit installation if whiptail can't be installed

* Remove creation of pg_trgm extension of psql

I think it is only needed for tripal 4 and not 3

* Minor tweaks

* Remove non-whiptail commands to make code concise

* Remove non-whiptail commands to make code concise

* Minor tweaks

* Instead of setting /var/www/html directly to apache, user DRUPAL_HOME variable

* Separate install-web-server in to install-apache & install-php

* Minor comment tweaks

* Separate drush installation into separate script

* Add system cron job only if successfully disabled drupal cron

* Add executing install-drush.sh to install.sh

* Separate preparation of chado into separate script

* Separate installation of chado into separate script

* Move installing bind9-dnsutils from install-tripal.sh to prepare-chado.sh

* Make install-chado.sh executable

* Move install-chado.sh & prepare-chado.sh from install-tripal.sh to install.sh

* Simplify installation of ncbi-blast+

* Simplify setup of sample blastdb

* Separate install-jbrowse.sh from install-tripal-jbrowse.sh

* Create dependencies.txt and install-dependencies.sh

* Create dependencies.txt and install-dependencies.sh

* Simplify country codes using json file

* Only source funtions otherwise json will get pulled

* Install dependencies before whiptail

* Change directory before installing dependencies

* Move countries.json to components/

* Simplify _input_drupal_country.sh

* Move  libapache2-mod-php from install-apache.sh to install-php.sh

* Rename country variables & thereby fix drupal error - Illegal choice India in Default country element

* Minor tweaks

* Fix - blast_path variable

* Run install-jbrowse.sh before install-tripal-jbrowse.sh

* Not use debian repo version of blast+

* Move blastdb from scripts/ to components/

* Move dependencies.txt from scripts/ to components/

* Move  aboutus.txt from root dir to components/

* Move show-about-us-page.sh from root dir to scripts/

* Refresh repos before installing dependencies

* Specify correct path to show-about-us-page.sh in install.sh

* Rename aboutus.txt -> about-us.txt

* Remove an unneeded space

* Revert "Not use debian repo version of blast+"

This reverts commit ff5f301.

* Fix blast_path variable

* Add success msg after sample blast db setup

* Remove success/fail msg from install-chado.sh

* Fix - pm-enable needs a higher bootstrap level (install-tripal-jbrowse.sh)

* Move field_formatter_settings.patch from scripts/ to components/

* Update some documentation

* Rename DRUPAL_HOME -> WEB_ROOT

* Rename drupalsitedir -> DRUPAL_HOME

* Remove whiptail from _is_internet_available

* Install whiptail before executing other scripts/functions

* Simplify warning msgs in _input_memory_limit

* Simplify warning msgs in _input_drupal_mail

* Add 'does dir exist' check to _input_drupal_dir.sh

* Simplify checking if email is valid

* Add is_dir_name_valid to _input_drupal_dir.sh

* Add is_username_valid to _input_drupal_username.sh

* Add is_username_valid to _input_db_username.sh

* Minor tweaks

* Simplify headers of .log files

* Use -z instead of ! -n

* Double quotes to prevent globbing & splitting

* Correct the use of a variable in printf statement

* 'expr length' has unspecified results. Prefer ${#var}

* Fix - i appears unused in for loops

* Minor tweaks

* Simplify calculation of left padding

* Create _is_db_name_valid.sh

* Remove replacing spaces in dbname since it is taken care of by _is_db_name_valid

* Incorporate _is_db_name_valid into _input_db_name

* Indentation - 4 spaces -> 2 spaces

* Correct the use of _is_db_name_valid in _input_db_name

* Correct the position of _is_db_name_valid in while loop of _input_db_name

* Create _is_variable_empty.sh

* Add return 1 to _is_variable_empty

* Change function _is_variable_empty -> _is_variable_nonempty

* Simplify functions using _is_variable_nonempty

* Minor tweaks

* Minor tweaks
  • Loading branch information
shreyas-a-s authored Jan 24, 2024
1 parent 478d440 commit 1218301
Show file tree
Hide file tree
Showing 53 changed files with 766 additions and 729 deletions.
File renamed without changes.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
252 changes: 252 additions & 0 deletions components/countries.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,252 @@
{
"AD": "Andorra",
"AE": "United Arab Emirates",
"AF": "Afghanistan",
"AG": "Antigua and Barbuda",
"AI": "Anguilla",
"AL": "Albania",
"AM": "Armenia",
"AN": "Netherlands Antilles",
"AO": "Angola",
"AQ": "Antarctica",
"AR": "Argentina",
"AS": "American Samoa",
"AT": "Austria",
"AU": "Australia",
"AW": "Aruba",
"AX": "Aland Islands",
"AZ": "Azerbaijan",
"BA": "Bosnia and Herzegovina",
"BB": "Barbados",
"BD": "Bangladesh",
"BE": "Belgium",
"BF": "Burkina Faso",
"BG": "Bulgaria",
"BH": "Bahrain",
"BI": "Burundi",
"BJ": "Benin",
"BL": "Saint Barthélemy",
"BM": "Bermuda",
"BN": "Brunei",
"BO": "Bolivia",
"BQ": "Caribbean Netherlands",
"BR": "Brazil",
"BS": "Bahamas",
"BT": "Bhutan",
"BV": "Bouvet Island",
"BW": "Botswana",
"BY": "Belarus",
"BZ": "Belize",
"CA": "Canada",
"CC": "Cocos (Keeling) Islands",
"CD": "Congo (Kinshasa)",
"CF": "Central African Republic",
"CG": "Congo (Brazzaville)",
"CH": "Switzerland",
"CI": "Ivory Coast",
"CK": "Cook Islands",
"CL": "Chile",
"CM": "Cameroon",
"CN": "China",
"CO": "Colombia",
"CR": "Costa Rica",
"CU": "Cuba",
"CV": "Cape Verde",
"CW": "Curaçao",
"CX": "Christmas Island",
"CY": "Cyprus",
"CZ": "Czech Republic",
"DE": "Germany",
"DJ": "Djibouti",
"DK": "Denmark",
"DM": "Dominica",
"DO": "Dominican Republic",
"DZ": "Algeria",
"EC": "Ecuador",
"EE": "Estonia",
"EG": "Egypt",
"EH": "Western Sahara",
"ER": "Eritrea",
"ES": "Spain",
"ET": "Ethiopia",
"FI": "Finland",
"FJ": "Fiji",
"FK": "Falkland Islands",
"FM": "Micronesia",
"FO": "Faroe Islands",
"FR": "France",
"GA": "Gabon",
"GB": "United Kingdom",
"GD": "Grenada",
"GE": "Georgia",
"GF": "French Guiana",
"GG": "Guernsey",
"GH": "Ghana",
"GI": "Gibraltar",
"GL": "Greenland",
"GM": "Gambia",
"GN": "Guinea",
"GP": "Guadeloupe",
"GQ": "Equatorial Guinea",
"GR": "Greece",
"GS": "South Georgia and the South Sandwich Islands",
"GT": "Guatemala",
"GU": "Guam",
"GW": "Guinea-Bissau",
"GY": "Guyana",
"HK": "Hong Kong S.A.R., China",
"HM": "Heard Island and McDonald Islands",
"HN": "Honduras",
"HR": "Croatia",
"HT": "Haiti",
"HU": "Hungary",
"ID": "Indonesia",
"IE": "Ireland",
"IL": "Israel",
"IM": "Isle of Man",
"IN": "India",
"IO": "British Indian Ocean Territory",
"IQ": "Iraq",
"IR": "Iran",
"IS": "Iceland",
"IT": "Italy",
"JE": "Jersey",
"JM": "Jamaica",
"JO": "Jordan",
"JP": "Japan",
"KE": "Kenya",
"KG": "Kyrgyzstan",
"KH": "Cambodia",
"KI": "Kiribati",
"KM": "Comoros",
"KN": "Saint Kitts and Nevis",
"KP": "North Korea",
"KR": "South Korea",
"KW": "Kuwait",
"KY": "Cayman Islands",
"KZ": "Kazakhstan",
"LA": "Laos",
"LB": "Lebanon",
"LC": "Saint Lucia",
"LI": "Liechtenstein",
"LK": "Sri Lanka",
"LR": "Liberia",
"LS": "Lesotho",
"LT": "Lithuania",
"LU": "Luxembourg",
"LV": "Latvia",
"LY": "Libya",
"MA": "Morocco",
"MC": "Monaco",
"MD": "Moldova",
"ME": "Montenegro",
"MF": "Saint Martin (French part)",
"MG": "Madagascar",
"MH": "Marshall Islands",
"MK": "Macedonia",
"ML": "Mali",
"MM": "Myanmar",
"MN": "Mongolia",
"MO": "Macao S.A.R., China",
"MP": "Northern Mariana Islands",
"MQ": "Martinique",
"MR": "Mauritania",
"MS": "Montserrat",
"MT": "Malta",
"MU": "Mauritius",
"MV": "Maldives",
"MW": "Malawi",
"MX": "Mexico",
"MY": "Malaysia",
"MZ": "Mozambique",
"NA": "Namibia",
"NC": "New Caledonia",
"NE": "Niger",
"NF": "Norfolk Island",
"NG": "Nigeria",
"NI": "Nicaragua",
"NL": "Netherlands",
"NO": "Norway",
"NP": "Nepal",
"NR": "Nauru",
"NU": "Niue",
"NZ": "New Zealand",
"OM": "Oman",
"PA": "Panama",
"PE": "Peru",
"PF": "French Polynesia",
"PG": "Papua New Guinea",
"PH": "Philippines",
"PK": "Pakistan",
"PL": "Poland",
"PM": "Saint Pierre and Miquelon",
"PN": "Pitcairn",
"PR": "Puerto Rico",
"PS": "Palestinian Territory",
"PT": "Portugal",
"PW": "Palau",
"PY": "Paraguay",
"QA": "Qatar",
"RE": "Reunion",
"RO": "Romania",
"RS": "Serbia",
"RU": "Russia",
"RW": "Rwanda",
"SA": "Saudi Arabia",
"SB": "Solomon Islands",
"SC": "Seychelles",
"SD": "Sudan",
"SE": "Sweden",
"SG": "Singapore",
"SH": "Saint Helena",
"SI": "Slovenia",
"SJ": "Svalbard and Jan Mayen",
"SK": "Slovakia",
"SL": "Sierra Leone",
"SM": "San Marino",
"SN": "Senegal",
"SO": "Somalia",
"SR": "Suriname",
"SS": "South Sudan",
"ST": "Sao Tome and Principe",
"SV": "El Salvador",
"SX": "Sint Maarten",
"SY": "Syria",
"SZ": "Swaziland",
"TC": "Turks and Caicos Islands",
"TD": "Chad",
"TF": "French Southern Territories",
"TG": "Togo",
"TH": "Thailand",
"TJ": "Tajikistan",
"TK": "Tokelau",
"TL": "Timor-Leste",
"TM": "Turkmenistan",
"TN": "Tunisia",
"TO": "Tonga",
"TR": "Turkey",
"TT": "Trinidad and Tobago",
"TV": "Tuvalu",
"TW": "Taiwan",
"TZ": "Tanzania",
"UA": "Ukraine",
"UG": "Uganda",
"UM": "United States Minor Outlying Islands",
"US": "United States",
"UY": "Uruguay",
"UZ": "Uzbekistan",
"VA": "Vatican",
"VC": "Saint Vincent and the Grenadines",
"VE": "Venezuela",
"VG": "British Virgin Islands",
"VI": "U.S. Virgin Islands",
"VN": "Vietnam",
"VU": "Vanuatu",
"WF": "Wallis and Futuna",
"WS": "Samoa",
"YE": "Yemen",
"YT": "Mayotte",
"ZA": "South Africa",
"ZM": "Zambia",
"ZW": "Zimbabwe"
}
4 changes: 4 additions & 0 deletions components/dependencies.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
bind9-dnsutils
curl
jq
wget
File renamed without changes.
34 changes: 16 additions & 18 deletions functions/_input_db_name.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,30 @@

function _input_db_name {
while true; do
if command -v whiptail > /dev/null; then # Whiptail is installed
psqldb=$(whiptail --title "USER INPUT" --inputbox \
"\nEnter the name for a new database for our website:\
\n\n (Press ENTER to continue)" \
12 47 \
"$psqldb" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi
else # Whiptail is not installed
read -r -p "Enter the name for a new database for our website: " psqldb
psqldb=$(whiptail --title "USER INPUT" --inputbox \
"\nEnter the name for a new database for our website:\
\n\n (Press ENTER to continue)" \
12 47 \
"$psqldb" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi

# Check if input is empty
if [ -n "$psqldb" ]; then
if _is_variable_nonempty "$psqldb"; then
break
fi

# Check if database name is valid
if _is_db_name_valid "$psqldb"; then
break
else
whiptail --msgbox " Please enter a value" 7 30
continue
fi
done

# Replaces 'spaces' with 'hyphens'
psqldb=$(echo "$psqldb" | tr ' ' '-')

# Export variable for use by child scripts
export psqldb
}
Expand Down
24 changes: 9 additions & 15 deletions functions/_input_db_pass.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,19 @@

function _input_db_pass {
while true; do
if command -v whiptail > /dev/null; then
PGPASSWORD=$(whiptail --title "USER INPUT" --passwordbox \
"\nEnter a password for the new user:\n\n (Press ENTER to continue)" \
11 38 \
"$PGPASSWORD" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi
else
read -r -p "Enter a password for the new user: " PGPASSWORD
PGPASSWORD=$(whiptail --title "USER INPUT" --passwordbox \
"\nEnter a password for the new user:\n\n (Press ENTER to continue)" \
11 38 \
"$PGPASSWORD" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi

# Check if input is empty
if [ -n "$PGPASSWORD" ]; then
if _is_variable_nonempty "$PGPASSWORD"; then
break
else
whiptail --msgbox " Please enter a value" 7 30
fi
done
# Hide PGPASSWORD by replacing characters with *
Expand Down
31 changes: 15 additions & 16 deletions functions/_input_db_username.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,28 @@

function _input_db_username {
while true; do
if command -v whiptail > /dev/null; then
psqluser=$(whiptail --title "USER INPUT" --inputbox \
"\nEnter username for a new database user:\n\n (Press ENTER to continue)" \
11 44 \
"$psqluser" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi
else
read -r -p "Enter a new username (role) for postgres: " psqluser
psqluser=$(whiptail --title "USER INPUT" --inputbox \
"\nEnter username for a new database user:\n\n (Press ENTER to continue)" \
11 44 \
"$psqluser" \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 1 ]; then
exit 1
fi

# Check if input is empty
if [ -n "$psqluser" ]; then
if _is_variable_nonempty "$psqluser"; then
break
fi

# Check if directory name is valid
if _is_username_valid "$psqluser"; then
break
else
whiptail --msgbox " Please enter a value" 7 30
whiptail --msgbox "Username is invalid. It should only contain alphabets, numbers and underscores & must start with an alphabet." 9 47
fi
done
# Replaces 'spaces' with 'hyphens'
psqluser=$(echo "$psqluser" | tr ' ' '-')

# Export the variable for use by child scripts
export psqluser
Expand Down
Loading

0 comments on commit 1218301

Please sign in to comment.