Latest Posts

Установка bitcoind сервера

Установка bitcoind сервера

Ниже приведены шаги как можно достаточно быстро установить bitcoind кошелек на Ubuntu сервер.
Для работы потребуется установка bitcoind пакета + python 2.7 на вашей машине.

 

Шаг 1. Установка bitcoind:

sudo apt-get install build-essential && sudo apt-get install libtool autotools-dev autoconf && sudo apt-get install libssl-dev && sudo apt-get install libboost-all-dev && sudo add-apt-repository ppa:bitcoin/bitcoin && sudo apt-get update && sudo apt-get install bitcoind && mkdir ~/.bitcoin/ && cd ~/.bitcoin/ && nano bitcoin.conf

Шаг 2.  Настройка bitcoin.conf:

Read more

Bitcoin Coinbase API v2 новая версия

Bitcoin Coinbase API v2 новая версия

Обновлен класс работы с Bitcoin через сервис Coinbase.

В новой версии обновлены все необходимые методы для работы с платежным сервисом Coinbase:

class Coinbase implements PaymentInterface
{
    private $config = [];
    private $code = "";
    private $client = "";
    private $account;

    public $error;
    public $orderId;
    public $amount;

    public function printForm($params = []);

    public function validate($params = []);

    public function send($params = []);

    public function createAddress();

    public function getTransaction($tranId);
}

Данный класс упрощает работу API Coinbase: https://github.com/coinbase/coinbase-php

Read more

Конфигурация nginx+ssl+php-fpm

Конфигурация nginx+ssl+php-fpm

Минимальная конфигурация nginx для работы с https в связке php-fpm:

server {
   listen 80;
   listen 443 default_server ssl;
   server_name {{ server_name }};

   root /var/www/html/current;

   access_log  /var/log/nginx/{{ server_name }}_access.log;
   error_log  /var/log/nginx/{{ server_name }}_error.log;

   ssl_certificate /path_to_cert/{{ server_name }}.cert;
   ssl_certificate_key /path_to_cert/{{ server_name }}.cert;

   index index.php index.html index.htm;

   location / {
      try_files $uri $uri/ /index.php?q=$uri&$args;
   }

   error_page 404 /404.html;
   error_page 500 502 503 504 /50x.html;

   location = /50x.html {
      root /usr/share/nginx/html;
   }

   location ~ \.php$ {
      try_files $uri =404;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      fastcgi_pass unix:/var/run/php5-fpm.sock;
      fastcgi_index index.php;
      include fastcgi_params;
   }
}

 

Read more

Mock в PHPUnit + Stabs

Mock в PHPUnit + Stabs

Простой и наглядный пример использования моков и стабов для PHPUnit:

$mock = $this->getMock('Yandex', array('send'));
$mock->expects($this->once())->method('send')->will($this->returnValue('success'));

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Codeship build + Yii2

Codeship build + Yii2

Ниже представлен пример сборки билда и прогона codeception тестов для проекта Yii2. Далее после прогона тестов и завершения сборки вы можете выгрузить свой артефакт на S3 либо на FTP(SFTP) сервера через CI сервис Codeship.

Пример команд сборки:

# We support all major PHP versions. Please see our docs for a full list
# https://documentation.codeship.com/languages/php/
phpenv local 5.6
# update phpunit
composer global remove "phpunit/phpunit" --update-with-dependencies
composer global require "phpunit/phpunit=4.*"
# == install composer global dependencies
composer global require "fxp/composer-asset-plugin:~1.1.4"
composer global require "codeception/codeception=2.1.*" "codeception/specify=*" "codeception/verify=*"
# == install project ==
composer install --prefer-source --no-interaction

Пример команд тестов:

Read more

Deployer.php обновленный рецепт для Yii2-basic

Deployer.php обновленный рецепт для Yii2-basic

Deployer.php — это система деплоя вашего php кода, написанная на PHP.

Представляет она из себя набор готовых «рецептов», которые вы можете использовать и автоматически доставлять ваш код на нужные вам машины.

Для проекта, написанного на Yii c шаблоном basic я немного модифицировал рецепт и теперь он выглядит как-то так:

Read more

Unit тестирование FileUpload модели в Yii2

Unit тестирование FileUpload модели в Yii2

Простейший тест для проверки валидации формы с файлами  под Yii2.
Требуется поместить в папку _data тестов тестовый файл чтобы можно было проводить сравнения.

public function testUpload()
{
  $fileUploader = new FileUploaderForm();

  $uploadedFile = new UploadedFile();
  $uploadedFile->name = "test.jpg";
  $uploadedFile->tempName = __DIR__."/../_data/test.jpg";
  $uploadedFile->type = "image/jpg";
  $uploadedFile->size = 1024;

  $fileUploader->documentFile = $uploadedFile;
  $fileUploader->validate();
  $this->assertTrue($fileUploader->validate());
}

 

Read more

Composer update

Composer update

Composer жрет очень много памяти на машине, и в случае если машина имеет памяти не так много он будет вечно обрываться с надписью Killed.

Проще всего сделать на локальном dev компьютере:

composer update

Затем перетащить на сервер composer.lock и просто запустить:

composer install

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Новая версия скрипта выдачи Bitcoin

Новая версия скрипта выдачи Bitcoin

Теперь вы можете сами установить на своем сервере и подключить скрипт удвоитель биткойн совершенно бесплатно!
Core ядро доступно на Github: https://github.com/Sassoft/Cryptocoin

Для установки достаточно прочитать инструкции в README.md

Скрипт создан на базе фреймворка Yii 2.0.*

Для работы с BTC используется библиотека от Blockchain.

2 Comments

  1. Олег

    Приветствую вас коллега :-))
    Подскажите пожалуйста в чём вопрос скрипт закинул на хост,прописал всё как сказано в файле README.md за исключением данных от блокчейн,далее http://ваш_сайт/install но току ноль,в чём вопрос? версия ПХП 5.4

    Read more

PHPStorm+PHPUnit в Yii2 — удобный вывод тестов

PHPStorm+PHPUnit в Yii2 — удобный вывод тестов

В PhpStorm в саму IDE встроена панель тестирования phpunit тестов. Но зная что в Yii2 сразу из коробки идет Codeception, который включает в себя также и сам phpunit и плюс дополнительный более удобный метод написания тестов, вывод самих unit тестов не совсем удобный. Для запуска codeception тестов нужно создать консольный скрипт и вывод результатов теста будет также через консоль. Хотелось бы иметь возможность прямо из PhpStorm запускать юнит тесты как по одному классу так и только один метод одного класса.

Read more