#!/bin/bash
while [[ "$#" -gt 0 ]]; do
case $1 in
-t|--target) target="$2"; shift ;;
-u|--uglify) uglify=1 ;;
*) echo "Unknown parameter passed: $1"; exit 1 ;;
esac
shift
done
echo "Where to deploy: $target"
echo "Should uglify : $uglify"
Usage:
./deploy.sh -t dev -u
# OR:
./deploy.sh --target dev --uglify
Автор: Александр Краснов
Простой инсталлятор для Linux средствами bash
Если вам приходилось ставить JDK на вашу Linux-машину, то вы знакомы с этим способом развёртывания приложения. И, если теперь ваша замечательная новая программа должна отправиться к благодарным пользователям, то почему бы не облегчить им жизнь с помощью простого «инсталлятора»? Вот увидите, клиенты это оценят.
Как это выглядит?
Предельно просто. Пользователь загружает .sh файл и запускает его. Скрипт не просто создаёт все директории и т.п., а ещё и извлекает «из себя» файлы приложения и раскладывает их куда нужно.
Утилита для проверки наличия подключения к PostgreSQL
sudo apt-get install postgresql-client pg_isready -h localhost -p 5432
Дополнительные параметры тут https://www.postgresql.org/docs/12/app-pg-isready.html
PostgreSQL 11: Мастерство разработки
PostgreSQL гарантирует, что столбец id будет уникальным, но при этом в индексе будет храниться дополнительное поле, так что при запросе обоих столбцов будет произведен просмотр индекса.
CREATE UNIQUE INDEX some_name ON person USING btree (id) INCLUDE (name);
Если вы хотите получить «настоящее время», то пользуйтесь функцией clock_timestamp(), а не now().
Читать далее «PostgreSQL 11: Мастерство разработки»Создание собственного Youtube сайта
В сложившейся ситуации на март 2022 года я решил найти замену Youtube. При простом поиске в интернете я нашел следующее ПО PeerTube.
Все инструкция находиться по адресу https://docs.joinpeertube.org/install-any-os?id=installation
Примечание: установку делал на Ubuntu 20.04
Видео ролик установки https://www.youtube.com/watch?v=62_fQwp3KTU
Добавление, разметка, монтирование нового жесткого диска в ubuntu
Понадобилось мне подключить к системе ubuntu 14.04 новый жесткий диск. Разобрал как это делается, с чем и хочу поделится с вами и для себя будет памятка.
У меня система развернута на сервере ESXi, к профилю виртуальной машины я добавил новых жесткий диск размером 500Gb. Запускаю систему и само собой она знать не знает чего мы там к ней подключили и как с ним работать.
Первым делом посмотрим какие вообще у нас устройства подключены
sudo fdisk -l
Видим что диск определился, но на нем отсутствует таблица разделов.
Читать далее «Добавление, разметка, монтирование нового жесткого диска в ubuntu»SWIFT: создание второго потока
var workItem: DispatchWorkItem? = nil
...
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
let indicator = activityIndicator()
indicator.startAnimating()
workItem = DispatchWorkItem {
// долгая команда
DispatchQueue.main.async {
indicator.stopAnimating()
indicator.hidesWhenStopped = true
}
}
DispatchQueue.global(qos: .utility).async(execute: workItem!)
}
...
override func viewDidDisappear(_ animated: Bool) {
if let workItem = workItem {
workItem.cancel()
self.workItem = nil
}
}
Pentaho: ошибка вида gc overhead limit exceeded
Предыстория: заказчик жалуется, что через какое-то время построение отчетов становиться не доступно (построение Excel с большим количеством строк).

По нагрузке видно, что все ядра на сервере построения отчетов загружены на полную, но при этом нагрузки на СУБД нет.
Читать далее «Pentaho: ошибка вида gc overhead limit exceeded»Настройка приема платежей через PayPal
Внимание: Платежная система PayPal с 31 июля 2021 г. прекратил осуществления клиентских внутренних переводов и платежей по России. Об этом говорится в заявлении компании. При этом пользователи системы в России по-прежнему смогут осуществлять перевод за рубеж или получать перевод из-за границы.
Прием платежей реализован через NodeJS и библиотеки express. Создаем проект и добавляем в зависимость npm модуль @paypal/checkout-server-sdk.
npm i @paypal/checkout-server-sdk
Прием платежей через PayPal реализуется в два этапа:
- создание (формирование) платежа клиентом.
- подтверждение приема платежа.
Установка настройка pgAgent
Оригинал инструкции размещен на сайте https://gist.github.com/peterneave/83cefce2a081add244ad7dc1c53bc0c3
- Устанавливаем приложение
sudo apt update sudo apt install pgagent
- Далее создаем файл .pgpass в рабочей директории postgresql (/var/lib/postgresql)
sudo su - postgres echo localhost:5432:*:pgagent:securepassword >> ~/.pgpass chmod 600 ~/.pgpass chown postgres:postgres /var/lib/postgresql/.pgpassЧитать далее «Установка настройка pgAgent»