bugfix -> register ETREE file before deploying (else we have no etree to dispatch)
This commit is contained in:
parent
85d4930e85
commit
7464903e66
|
@ -0,0 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
# (1) Get iface name #
|
||||
iface="`hciconfig | awk '{print $1'} | grep -P ':$' | sed 's/://' | head -n 1`";
|
||||
|
||||
# (2) Enable secure pairing #
|
||||
sudo hciconfig $iface sspmode 1;
|
||||
sudo hciconfig $Iface piscan;
|
||||
|
||||
# (3) Find device mac addr #
|
||||
macaddr="`hcitool scan | grep -vP '^Scan'`";
|
||||
|
||||
# If nothing found -> exit
|
||||
|
||||
# (4) Pair with device #
|
||||
# newiface target channel
|
||||
sudo rfcomm bind /dev/rfcomm1 $macaddr 1;
|
|
@ -0,0 +1,6 @@
|
|||
apt-get install libbluetooth-dev
|
||||
pip install pybluez
|
||||
|
||||
|
||||
# v2
|
||||
apt-get install bluetooth bluez python-serial
|
|
@ -0,0 +1,9 @@
|
|||
from bluetooth import *;
|
||||
|
||||
|
||||
sock = BluetoothSocket( RFCOMM );
|
||||
sock.bind( ('', PORT_ANY) );
|
||||
sock.listen(1);
|
||||
|
||||
|
||||
port = sock.getsockname()[1];
|
|
@ -25,8 +25,29 @@
|
|||
}
|
||||
|
||||
|
||||
/* [2] Get etrees list
|
||||
=========================================================*/
|
||||
/* (1) Check data */
|
||||
if( !isset($arr_r['etrees']) || !is_array($arr_r['etrees']) ){
|
||||
slog('No \'etree\' found in response file', "api:deploy", 'update');
|
||||
return 127;
|
||||
}
|
||||
|
||||
/* [2] Get the list of daemons (features)
|
||||
/* (2) Reset file */
|
||||
file_put_contents(ETREE_CONF, '');
|
||||
|
||||
/* (3) Replace content */
|
||||
$f = new SplFileObject(ETREE_CONF, 'w');
|
||||
|
||||
foreach($arr_r['etrees'] as $etree)
|
||||
$f->fwrite( $etree.PHP_EOL );
|
||||
|
||||
$f = null;
|
||||
|
||||
|
||||
|
||||
|
||||
/* [3] Get the list of daemons (features)
|
||||
=========================================================*/
|
||||
$feature = [];
|
||||
$f = new SplFileObject(ETREE_CONF, 'r');
|
||||
|
@ -44,53 +65,11 @@
|
|||
$feature[] = $etree;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* [3] Launch deploy script for each feature
|
||||
=========================================================*/
|
||||
/* (1) For each feature */
|
||||
foreach($feature as $feat_name){
|
||||
|
||||
/* (2) Check if specific data in response */
|
||||
if( !isset($arr_r['feature'][$feat_name]) )
|
||||
continue;
|
||||
|
||||
/* (3) Check for feature deploy script */
|
||||
if( !file_exists(SOURCE_DIR."/feature/$feat_name/deploy") )
|
||||
continue;
|
||||
|
||||
/* (4) Write useful exclusive data to tmp file */
|
||||
file_put_contents(TMP_DIR."/$feat_name", json_encode($arr_r['feature'][$feat_name]));
|
||||
|
||||
/* (4) Execute deploy script */
|
||||
$sync_suffix = $sync ? ' sync' : '';
|
||||
syscall(SOURCE_DIR."/feature/$feat_name/deploy$sync");
|
||||
|
||||
}
|
||||
|
||||
/* [4] Get etrees list
|
||||
=========================================================*/
|
||||
/* (1) Check data */
|
||||
if( !isset($arr_r['etrees']) || !is_array($arr_r['etrees']) ){
|
||||
slog('No \'etree\' found in response file', "$FEATURE:deploy", 'update');
|
||||
return 127;
|
||||
}
|
||||
|
||||
/* (2) Reset file */
|
||||
file_put_contents(ETREE_CONF, '');
|
||||
|
||||
/* (3) Replace content */
|
||||
$f = new SplFileObject(ETREE_CONF, 'w');
|
||||
|
||||
foreach($arr_r['etrees'] as $etree)
|
||||
$f->fwrite( $etree.PHP_EOL );
|
||||
|
||||
$f = null;
|
||||
|
||||
|
||||
|
||||
/* [5] Remove features' entries
|
||||
/* [4] Remove features' entries
|
||||
=========================================================*/
|
||||
/* (0) We are done if @sync */
|
||||
if( $sync ){
|
||||
|
@ -129,6 +108,30 @@
|
|||
}
|
||||
|
||||
|
||||
|
||||
/* [5] Launch deploy script for each feature
|
||||
=========================================================*/
|
||||
/* (1) For each feature */
|
||||
foreach($feature as $feat_name){
|
||||
|
||||
/* (2) Check if specific data in response */
|
||||
if( !isset($arr_r['feature'][$feat_name]) )
|
||||
continue;
|
||||
|
||||
/* (3) Check for feature deploy script */
|
||||
if( !file_exists(SOURCE_DIR."/feature/$feat_name/deploy") )
|
||||
continue;
|
||||
|
||||
/* (4) Write useful exclusive data to tmp file */
|
||||
file_put_contents(TMP_DIR."/$feat_name", json_encode($arr_r['feature'][$feat_name]));
|
||||
|
||||
/* (4) Execute deploy script */
|
||||
$sync_suffix = $sync ? ' sync' : '';
|
||||
syscall(SOURCE_DIR."/feature/$feat_name/deploy$sync");
|
||||
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -24,6 +24,8 @@
|
|||
|
||||
}
|
||||
|
||||
$f = null;
|
||||
|
||||
|
||||
|
||||
/* [2] Fetch & generate useful data from features
|
||||
|
|
Loading…
Reference in New Issue