User Tools

Site Tools


capacity_building:workshops:tooling

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
capacity_building:workshops:tooling [2022/10/08 11:56] – [Demo files used during the presentation] rolf001capacity_building:workshops:tooling [2022/10/09 21:04] (current) harley001
Line 1: Line 1:
 +/*
 ~~NOTOC~~ ~~NOTOC~~
 +*/
 ====== Tools, Workflow and Resources for Effective Development  ====== ====== Tools, Workflow and Resources for Effective Development  ======
  
-**Live Online Workshop for HSRW and ULSA by Harley Lara - 2022-10-06** +**Live Online Workshop for [[https://ulsa.edu.ni/|ULSA]] and [[http://hsrw.eu/|HSRW]] by Harley Lara - 2022-10-06** 
  
 Workshop details: Workshop details:
   * **Topic**: Tools, workflow and resources for effective development    * **Topic**: Tools, workflow and resources for effective development 
-  * **Description**: Hardware and/or Software project development can be a long and complex process, but with the right set of tools everything can be faster and more efficient from the developer's point of view. This workshop is based on providing tools for developers to have a seamless process, producing quality software and hardware. In collaboration with [[https://ulsa.edu.ni/|ULSA]] Nicaragua and [[https://www.hochschule-rhein-waal.de/en/faculties/communication-and-environment/laboratories/eo-lab|EO lab]] [[https://www.hochschule-rhein-waal.de|HSRW]]. +  * **Description**: Hardware and/or Software project development can be a long and complex process, but with the right set of tools everything can be faster and more efficient from the developer's point of view. This workshop is based on providing tools for developers to have a seamless process, producing quality software and hardware. In collaboration with [[https://ulsa.edu.ni/|ULSA]] Nicaragua and the [[https://www.hochschule-rhein-waal.de/en/faculties/communication-and-environment/laboratories/eo-lab|EOLab]] of the [[https://www.hochschule-rhein-waal.de|HSRW]]. 
   * **Date**: 06 October 2022   * **Date**: 06 October 2022
   * **Time**: from 16:00 to 18:00 (CEST)   * **Time**: from 16:00 to 18:00 (CEST)
Line 15: Line 17:
 ---- ----
  
-===== Demo files used during the presentation =====+===== Demo Scripts Used in the Workshop =====
  
-<WRAP center round info 60%> +Download all the files here: {{ :capacity_building:workshops:example_files.zip |example_files.zip}}
-Please change the ''.doc'' extension to the correct extension. The Bash script uses ''.sh'' and ansible-playbooks ''.yml''. +
-</WRAP>+
  
-  * {{ :capacity_building:workshops:bash-hello.doc |Hello bash script}}: Print message in the terminal +  * ''bash-hello.sh'': Print message in the terminal 
-  * {{ :capacity_building:workshops:tmux-fzf.doc |Tmux and fzf bash script}}: fuzzy search over a group of specified directories +  * ''tmux-fzf.sh'': fuzzy search over a group of specified directories 
-  * {{ :capacity_building:workshops:bash-software.doc |Software installation bash script}}: Basic bash script to install a set of packages +  * ''bash-software.sh'': Basic bash script to install a set of packages 
-  * {{ :capacity_building:workshops:ansible-software.doc |Software installation ansible playbook}}: Basic playbook to install a set of packages +  * ''ansible-software.yml'': Basic playbook to install a set of packages 
-  * {{ :capacity_building:workshops:bash-software-tags.doc |Tags implementation in bash}}: Minimal and basic tag implementation to emulate ansible tags using bash script+  * ''bash-software-tags'': Minimal and basic tag implementation to emulate ansible tags using bash script
  
 ===== bash Demo ===== ===== bash Demo =====
Line 31: Line 31:
 <file bash hello-bash.sh> <file bash hello-bash.sh>
 #!/bin/bash #!/bin/bash
-# 
-# Script used as demo during the workshop 
-# "Tools, Workflows and Resources" 
-# 06 Oct. 2022, HSRW Germany 
- 
-# Copyright (c) 2022 Harley Lara 
- 
-# Permission is hereby granted, free of charge, to any person obtaining 
-# a copy of this software and associated documentation files (the 
-# "Software"), to deal in the Software without restriction, including 
-# without limitation the rights to use, copy, modify, merge, publish, 
-# distribute, sublicense, and/or sell copies of the Software, and to 
-# permit persons to whom the Software is furnished to do so, subject to 
-# the following conditions: 
- 
-# The above copyright notice and this permission notice shall be 
-# included in all copies or substantial portions of the Software. 
- 
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 
- 
-sudo apt-get update && \ 
-apt-get install -y \ 
-    build-essential \ 
-    cmake \ 
-    pkg-config \ 
-    libpthread-stubs0-dev 
- 
-sudo apt-get install -y \ 
-    curl \ 
-    htop \ 
-    python3-pip 
  
 +echo "hello bash scripting"
 </file> </file>
  
Line 75: Line 39:
 <file bash tmux-fzf.sh> <file bash tmux-fzf.sh>
 #!/bin/bash #!/bin/bash
-# 
-# Script used as demo during the workshop 
-# "Tools, Workflows and Resources" 
-# 06 Oct. 2022, HSRW Germany 
- 
-# Copyright (c) 2022 Harley Lara 
- 
-# Permission is hereby granted, free of charge, to any person obtaining 
-# a copy of this software and associated documentation files (the 
-# "Software"), to deal in the Software without restriction, including 
-# without limitation the rights to use, copy, modify, merge, publish, 
-# distribute, sublicense, and/or sell copies of the Software, and to 
-# permit persons to whom the Software is furnished to do so, subject to 
-# the following conditions: 
- 
-# The above copyright notice and this permission notice shall be 
-# included in all copies or substantial portions of the Software. 
- 
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 
- 
- 
  
 # Used the next line to set the list of directories # Used the next line to set the list of directories
Line 140: Line 77:
 </file> </file>
  
 +
 +===== apt - Linux Software Package Manager =====
 +
 +<file bash install-some-software-packages.sh>
 +#!/bin/bash
 +
 +sudo apt update && \
 +apt-get install -y \
 +    build-essential \
 +    cmake \
 +    pkg-config \
 +    libpthread-stubs0-dev
 +
 +sudo apt install -y \
 +    curl \
 +    htop \
 +    python3-pip
 +
 +
 +</file>
  
 ===== Encryption and Decryption with Ansible ===== ===== Encryption and Decryption with Ansible =====
  
 +Encryption:
 <code> <code>
-# Encryption: +$> ansible-vault encrypt FILE_NAME 
-ansible-vault encrypt FILE_NAME+</code>
  
-Decryption: +Decryption: 
-ansible-vault decrypt FILE_NAME+<code> 
 +$> ansible-vault decrypt FILE_NAME
 </code> </code>
  
capacity_building/workshops/tooling.1665222972.txt.gz · Last modified: 2022/10/08 11:56 by rolf001