Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Script: Semaphore #596

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

quantumryuu
Copy link
Contributor

@quantumryuu quantumryuu commented Nov 30, 2024

Note

We are meticulous when it comes to merging code into the main branch, so please understand that we may reject pull requests that do not meet the project's standards. It's never personal. Also, game-related scripts have a lower chance of being merged.

Description

!! RECREATED FORK REPO AND CREATED PR AGAIN !!
Made install script for Semaphore

Fixes # (issue)
#68
Project Board

Type of change

Please check the relevant option(s):

  • Bug fix (non-breaking change that resolves an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (a fix or feature that would cause existing functionality to change unexpectedly)
  • New script (a fully functional and thoroughly tested script or set of scripts.)

Prerequisites

The following efforts must be made for the PR to be considered. Please check when completed:

  • Self-review performed (I have reviewed my code, ensuring it follows established patterns and conventions)
  • Testing performed (I have tested my changes, ensuring everything works as expected)
  • Documentation updated (I have updated any relevant documentation)

Additional Information (optional)

Provide any additional context or screenshots about the feature or fix here.

Related Pull Requests / Discussions

If there are other pull requests or discussions related to this change, please link them here:
Previews PR was not reviewed so take this PR as a reference point!

@quantumryuu quantumryuu requested a review from a team as a code owner November 30, 2024 00:06
@github-actions github-actions bot added new script A change that adds a new script website A change to the website labels Nov 30, 2024
ct/semaphore.sh Outdated
@@ -0,0 +1,97 @@
#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/kristocopani/ProxmoxVE/build/misc/build.func)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, fixed it!

wget -qO- "https://keyserver.ubuntu.com/pks/lookup?fingerprint=on&op=get&search=0x6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367" | gpg --dearmour >/usr/share/keyrings/ansible-archive-keyring.gpg
$STD echo "deb [signed-by=/usr/share/keyrings/ansible-archive-keyring.gpg] http://ppa.launchpad.net/ansible/ansible/ubuntu $UBUNTU_CODENAME main" | tee /etc/apt/sources.list.d/ansible.list
$STD apt update
$STD apt install -y \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do an oneliner?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

git \
gpg \
sudo
UBUNTU_CODENAME=jammy
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Seperate msg_info "Setup Ansible"
  2. Is this needed? (Ansible per se) Or is this the BoldDB?
  3. Why a fixed Codec jammy?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Done!
  2. Ansible needed for Semaphore else it will fail to setup properly.
  3. Jammy needed as per https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html#installing-ansible-on-debian

sudo
UBUNTU_CODENAME=jammy
wget -qO- "https://keyserver.ubuntu.com/pks/lookup?fingerprint=on&op=get&search=0x6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367" | gpg --dearmour >/usr/share/keyrings/ansible-archive-keyring.gpg
$STD echo "deb [signed-by=/usr/share/keyrings/ansible-archive-keyring.gpg] http://ppa.launchpad.net/ansible/ansible/ubuntu $UBUNTU_CODENAME main" | tee /etc/apt/sources.list.d/ansible.list
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Std not needed, Tee is wrong

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed it completely to cat EOF etc

cd /opt/semaphore
wget -q https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb
$STD dpkg -i semaphore_${RELEASE}_linux_amd64.deb
rm -rf semaphore_${RELEASE}_linux_amd64.deb
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Below in Cleaning up

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

Comment on lines 39 to 41
json_cookie_hash=$(head -c32 /dev/urandom | base64)
json_cookie_encryption=$(head -c32 /dev/urandom | base64)
json_access_key_encryption=$(head -c32 /dev/urandom | base64)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That are Installation Variables? Can you do Shorter and in CAPSLOCK?
By the way, in the most Scripts we use the openssl function

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Migrated to OPENSSL and did the shorter/uppercase!

"access_key_encryption": "${json_access_key_encryption}"
}
EOF
$STD semaphore user add --admin --login admin --email [email protected] --name Administrator --password admin --config /opt/semaphore/config.json
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[email protected]
Password please generate a 12-16 openssl key and save it into ~./semafore.creds

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

ct/semaphore.sh Outdated
Comment on lines 3 to 54
# Copyright (c) 2021-2024 community-scripts ORG
# Author: kristocopani
# License: MIT
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE

function header_info {
clear
cat <<"EOF"
_____ __
/ ___/___ ____ ___ ____ _____ / /_ ____ ________
\__ \/ _ \/ __ `__ \/ __ `/ __ \/ __ \/ __ \/ ___/ _ \
___/ / __/ / / / / / /_/ / /_/ / / / / /_/ / / / __/
/____/\___/_/ /_/ /_/\__,_/ .___/_/ /_/\____/_/ \___/
/_/

EOF
}
header_info
echo -e "Loading..."
APP="Semaphore"
var_disk="4"
var_cpu="2"
var_ram="2048"
var_os="debian"
var_version="12"
variables
color
catch_errors

function default_settings() {
CT_TYPE="1"
PW=""
CT_ID=$NEXTID
HN=$NSAPP
DISK_SIZE="$var_disk"
CORE_COUNT="$var_cpu"
RAM_SIZE="$var_ram"
BRG="vmbr0"
NET="dhcp"
GATE=""
APT_CACHER=""
APT_CACHER_IP=""
DISABLEIP6="no"
MTU=""
SD=""
NS=""
MAC=""
VLAN=""
SSH="no"
VERB="no"
echo_default
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you migrate to new header? Example:

#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2024 tteck
# Author: MickLesk (Canbiz) & vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://hoarder.app/

# App Default Values
APP="Hoarder"
var_tags="bookmark"
var_cpu="2"
var_ram="4096"
var_disk="8"
var_os="debian"
var_version="12"
var_unprivileged="1"

# App Output & Base Settings
header_info "$APP"
base_settings

# Core
variables
color
catch_errors

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

ct/semaphore.sh Outdated
Comment on lines 95 to 97
msg_ok "Completed Successfully!\n"
echo -e "${APP} server should be reachable by connecting to the following server.
${BL}http://${IP}:3000${CL} \n"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you migrate to new footer? Example:

msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

@quantumryuu
Copy link
Contributor Author

Can you also please check the json file?
I added "Admin password: cat ~/semaphore.creds"

ct/semaphore.sh Outdated Show resolved Hide resolved
install/semaphore-install.sh Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new script A change that adds a new script website A change to the website
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants