...
Just my blog

Blog about everything, mostly about tech stuff I made. Here is the list of stuff I'm using at my blog. Feel free to ask me about implementations.

Soft I recommend
Py lib I recommend

I'm using these libraries so you can ask me about them.

Install Bacula on debian systems

Failed to load the database DBI driver SQLite at ./bacula-backup-lib.pl line 45 Based on:

The main problem was:

Failed to load the database DBI driver SQLite at ./bacula-backup-lib.pl line 45

this ultra fast fix can help:

apt-get install libdbd-sqlite3-perl

You can install any needed module based on SQL you use: MySQL, PostrgeSQL etc.

Read...

Atlassian Confluence REST API Making request and keep the session (Eng)

In this topic I'll show you how to make session to Atlassian Confluence with python requests and keep it in memory.

Atlassian Confluence Based on:

For someone who found this topic by "search machines", there is some more detailed how-to - probably can help you:

Python requests module:

At first you should know and understand how requests works, basically.

Check how your confluence works:

Next - you should know the point, where is your Confluence server make authorisation, in my situation it lies here (this is looks cozy, but this is our company's way. In your situation it can be simpler, as documented in links above): https://docs.YOURCOMPANYMAME.com/docs/dashboard.action?os_username=configipedia_service_account&os_password=PASSWORD

Then you compose a request like:

import json
import requests

confluence_auth_url = 'https://docs.YOURCOMPANYMAME.com/docs/dashboard.action?os_username=configipedia_service_account&os_password=PASSWORD'
session = requests.session()
session.post(confluence_auth_url)

This will execute and save the session in memory, so you will not need to authorise each next request.

REST URL composing:

Then …

Read...

Atlassian Confluence REST API Logic structure (Eng)

Read this article after you know how to make REST API request to Atlassian Confluence! atlassian_con This topic will show you some part of internal scheme of Confluence API and hierarchy. Based on:

So, looking on the Confluence docs all this scheme looks like well-structured logical system, but it has some difficulties, just as for me. Before you POST of GET something will be better if you make a probing GET request to see the whole structure in your organisation. In this example you will get those arguments:

# Confluence stats
space_page = '625685389'
space_root_page = '625685397'
space_id = '624689178'
space_key = '~configipedia_service_account'
space_name = 'DocBot+space'
child_page_1 = '625685424'
child_page_2 = '625685428'
confPedia_root = 'https://docs.YOURCOMPANYMAME.com'
confPediaUser = '~configipedia_service_account'

# api keys
# Usage example: "confPedia_root+conf_content+space_id" - request to get space homepage content
api = '/rest/api/'
conf_space = '/rest/api/space/'
conf_content = '/rest/api/content/'
conf_children = '/child/page/'

 

# Confluence stats …

Read...

Atlassian Confluence REST API (Eng)

How to work with REST API Confluence.

Rus [caption id="attachment_2385" align="aligncenter" width="609"]Atlassian Confluence REST API Atlassian Confluence REST API[/caption]

What is this topic about?

  • API structure in Atlassian Confluence.
  • Objects, files, relations etc.
  • How to compose API request in Atlassian Confluence?
  • How to open session and hold it on - !
  • Making headers with requests and - json !
  • Send a file or file content with wiki markup on Confluence - !
  • Interpret server answers.
  • What is the difference between "representation":"storage" and "markup" in Atlassian Confluence?
    • Macro and markup

About "Atlassian Confluence" you can read here.

  • https://www.atlassian.com/software/confluence
  • https://wikipedia.org/wiki/Confluence

Who need this?

For those, who wants to automate documentation stage of DEV. For those, who wants to understand how does python requests working? For my own - to not forger this lesson. When I started to make this bot - I know nothing, just like a John Snow, I also …

Read...

Atlassian Confluence REST API

Как работать с REST API Confluence.

Eng Atlassian_Python О чем этот топик?

  • Структура API в системе Confluence.
  • Объекты, файлы, статьи, родство и проч.
  • Формирование запроса(адреса) в API Confluence
  • Открытие сессии и удержание её в памяти - !
  • Формирование заголовков при помощи модуля requests и - json !
  • Отправка файла, содержания файла, вики-разметки на сервер Confluence - !
  • Интерпретируем ответы от сервера

Что такое Atlassian Confluence вы можете почитать здесь:

  • https://www.atlassian.com/software/confluence
  • https://ru.wikipedia.org/wiki/Confluence

Кому нужен этот топик?

Тем мученикам, которые хотят автоматизировать процесс написания/отправки документации в разработке. Тем мученикам, которые как и я, по очевидным примерам не могут разобраться в модуле requests касаемо работе с заголовками. Мне самому, чтобы не забыть свой "подвиг" и все его наработки, так как память имеет свойство "стираться".   В тот момент, когда я решил заняться автоматизацией процесса документации в своей компании я не знал, насколько кастрирована наша Confluence и насколько убогий, окажется в принципе сам её API, как долго придется возиться с тем, чтобы …

Read...

Python Run External Command And Get Output On Screen or In Variable

Отседова: http://www.cyberciti.biz/faq/python-run-external-command-and-get-output/ The basic syntax is:

import subprocess
subprocess.call("command-name-here")
subprocess.call(["/path/to/command", "arg1", "-arg2"])

Run ping command to send ICMP ECHO_REQUEST packets to www.cyberciti.biz:

#!/usr/bin/python
import subprocess
subprocess.call(["ping", "-c 2", "www.cyberciti.biz"])

Свой вариант:

C:\Python34>python.exe
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> subprocess.call(["ping", "-t", "8.8.8.8"])

Pinging 8.8.8.8 with 32 bytes of data:
Reply from 8.8.8.8: bytes=32 time=49ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43
Reply from 8.8.8.8: bytes=32 time=43ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43
Reply from 8.8.8.8: bytes=32 time=42ms TTL=43

Ping statistics for 8.8.8.8:
    Packets: Sent = 8, Received = 8, Lost = 0 (0% loss),

Чисто чтобы не забыть, себе шпора. Быть может очень скоро пригодится. С аутпутами пока не разбирался, как-то …

Read...

From vmdk to vhd

  • StarWind V2V Image Converter
  • VMware vCenter Converter Standalone Client
  •  

Very useful:

  • http://rmlinar.net/blog/2014/07/29/convert-single-vmdk-to-vhdx-with-microsoft-virtual-machine-converter-2-0-mvmc/

Read...

Django fast hints

Here some fast hints to remember: Migration:

cd ~/myproject
python manage.py makemigrations
python manage.py migrate

  Alias /static/ "/var/www/smm_tools/site/"  

Read...

Персональный тренер на андроид - Gymme Personal Trainer

Здесь я вам расскажу про полезное и удобное приложение по ведению и учету тренировок разного характера, от силовых, до кардио, разминочных и фитнес. 3c59a4 Занимаясь уже немногим более двух лет, я сталкивался с проблемой учета и планирования программ тренировок, скажу сразу, заниматься этим видом спорта, если можно так выразиться я начал еще лет с 16, под эгидой "набрать мышечную массу и не выглядеть как дрищ" и занятие сие было не очень долгим, но к залу  возвращался время от времени спустя месяцы и годы, потом в 18, 19 лет, потом в вузе, и наконец только последние 2 с половиной года я начал заниматься регулярно. Именно когда вы начинаете заниматься регулярно, постоянно, упорно - возникает необходимость разработки конкретных программ тренировок, учета статистики и достижений, потому что первый, головокружительный успех от занятий, достигается очень легко в первые несколько мес, но потом, если не задумываться о вариативности упражнений, можно просто попасть в ловушку и заметить, …

Read...

Вождь Бот возможности и функции

[caption id="attachment_2226" align="alignright" width="297"]Вождь Бот Вождь Бот[/caption] "Вождь Бот" это автоматизированная система ведения рубрик в сообществах и группах в социальных сетях "Вконтакте" и "Facebook" (частично).   Над его разработкой трудится пока только один человек, поэтому многие новые функции будут еще появляться, а улучшение уже существующих может занимать много времени. У проекта пока даже нет веб-версии, которая могла бы служить центром управления этими функциями, поэтому их настройка пока происходит вручную, лично разработчиком и частично администратором группы, к которой система будет подключаться.   Возможности системы "Вождь Бот" на данный момент следующие:

Возможности Вождь Бота:

  1. Поздравление участников группы с днем рождения: https://vk.com/wall-46631810_451052
  2. Прогнозы погоды:
  3. Публикация списка последних 100 забаненных пользователей: https://vk.com/wall-46631810_449891
  4. Проверка наличия предложенных новостей в нескольких группах, и кол-во постов уже вышедших на стену.
  5. Автоматическое удаление комментариев, которые оставили не участники группы (вроде антиспама).
  6. Выбор случайного (random) участника по конкурсам репостов сразу …

Read...