|
1 | 1 | ##Some Taiga Scripts |
2 | | -These is a set of bash scripts used to manage an Agile project management platform currently under development called [Taiga](http://taiga.io "Taiga project management platform"). |
| 2 | +These scripts manage an Agile project management platform currently under development called [Taiga](http://taiga.io "Taiga project management platform"). |
3 | 3 | Though in beta, this web-based platform is extremely stable and the RESTful API is thorough and responsive. |
4 | 4 |
|
5 | | -These scripts are loosely organized into two categories: |
| 5 | +These scripts are loosely organized into three categories: |
6 | 6 |
|
7 | | -Taiga importers |
| 7 | +Taiga importers (bash script): |
8 | 8 |
|
9 | 9 | - taiga_import_story.sh |
10 | 10 |
|
11 | | -Taiga exporters |
| 11 | +Taiga exporters (bash scripts): |
12 | 12 |
|
13 | 13 | - taiga_export_project.sh |
14 | 14 | - run_taiga_export_project.sh |
15 | | -- postgres_db_dump.sh |
16 | | -- run_postgres_db_dump.sh |
17 | 15 |
|
18 | | -> **Note:** With the exception of exporters `postgres_db_dump.sh` and `run_postgres_db_dump.sh`, these scripts assume the existence of a Taiga project. If you don't yet have a project created, these scripts will be useless to you. |
| 16 | +Taiga task activities reporting (bash scripts or HTML/JavaScript): |
| 17 | + |
| 18 | +- taiga_tasks.html |
| 19 | + |
| 20 | + |
| 21 | +> **Note:** These scripts assume the existence of a Taiga project. If you don't yet have a project created, these scripts are pretty useless to you. |
19 | 22 |
|
20 | 23 | ###Taiga Importers |
21 | 24 | ####taiga_import_story.sh |
22 | | -There's currently one import script available. Called `taiga_import_story.sh`, it does what it sounds like it does: imports a story into a Taiga project. Actually, this script does a bulk import of many stories from a tab-delimited file provided as input to the script. |
| 25 | +There's currently one import script available. Called `taiga_import_story.sh`, it does what it sounds like: imports a story into a Taiga project. Actually, the real value of this script is that it can perform a bulk import of many stories from a tab-delimited file provided as input to the script. |
23 | 26 |
|
24 | 27 | As implemented, this initial version of the script creates a story, populating the following fields: |
25 | | -* project ID (required) |
26 | | -* subject (required) |
27 | | -* description |
28 | | -* tags (up to three) |
| 28 | + |
| 29 | +- project ID (required) |
| 30 | +- subject (required) |
| 31 | +- description |
| 32 | +- tags (up to three) |
29 | 33 |
|
30 | 34 | ###Taiga Exporters |
31 | | -There are four export scripts available, however two are really scripts used as front-ends (`run_...`) that call into the other backend scripts. |
| 35 | +There are four export scripts available, however two are really scripts used as front-ends (scripts prepended with `run_`) that call into their respective back-end scripts. |
32 | 36 | ####taiga_export_project.sh |
33 | | -`taiga_export_project.sh` takes a number of command-line parameters, mostly identifying the Taiga project from which to export, and exports the JSON file to a date-and-time-stamped file (useful for a running backup archive). |
| 37 | +`taiga_export_project.sh` takes a number of command-line parameters, mostly identifying the Taiga project from which to export, and exports the JSON file to a date-and-time-stamped file (particularly useful for a running backup archive). |
34 | 38 | ####run_taiga_export_project.sh |
35 | | -`run_taiga_export_project.sh` is really just a front-end script that calls into `taiga_export_projecct.sh` with defined sets of parameters. This script is used to help automate a regular Taiga project backup strategy through the use of Unix-like tools such as *crontab*. |
36 | | -####postgres_dump_db.sh |
| 39 | +`run_taiga_export_project.sh` is the front-end script that calls into `taiga_export_project.sh` with a predefined set of parameters. This script is used to help automate a regular Taiga project backup strategy through the use of Unix-like tools such as *crontab*. |
37 | 40 |
|
38 | | ->>> MOVED TO SEPARATE REPOSITORY (https://github.com/richbl/postgresql-db-dump) <<<< |
| 41 | +###Taiga Task Activity Reporting |
| 42 | +These scripts are used to query into an existing Taiga project, parse user stories by user, perform some calculations against these user stories, and ultimately display the results graphically using [Highcharts](http://www.highcharts.com/ "Highcharts"). |
| 43 | + |
| 44 | +These scripts are written in both bash and JavaScript, and are intended to be run either locally or from a remote server. The organization of the repository should provide some understanding of which scripts are which: |
| 45 | + |
| 46 | +- bash folder containing: |
| 47 | + - `taiga_tasks.sh` |
| 48 | + - `run_taiga_tasks.sh` |
| 49 | +- local folder containing: |
| 50 | + - `taiga_tasks.html` |
| 51 | +- remote folder containing: |
| 52 | + - `taiga_tasks.html` |
| 53 | + - `favicon.ico` |
| 54 | + - img folder containing: |
| 55 | + - `logo.png` |
| 56 | + - js folder containing: |
| 57 | + - `taiga_tasks_dlg.js` |
| 58 | + - `taiga_tasks_api.js` |
| 59 | + |
| 60 | +The scripts contained in the bash and the local folders are useful for running these applications from a local machine, while the scripts in the remote folder are intended to be installed and run from a remote web-server. |
39 | 61 |
|
40 | | -`postgres_dump_db.sh` was written intially to permit for the remote dump of a PostgreSQL database. It takes a number of command-line parameters, and if run successfully, returns a date-and-time-stamped file (useful for a running backup archive). This script expects that the host is properly configured to accept remote logins, and that the Postgres user (technically called a role in Postgres) is apppropriately associated with the database in question. |
41 | | -####run_postgres_dump_db.sh |
42 | | -`run_taiga_export_project.sh` is really just a front-end script that calls into `taiga_export_projecct.sh` with defined sets of parameters. This script is used to help automate a regular Taiga project backup strategy through the use of Unix-like tools such as *crontab*. |
43 | 62 | ###Requirements |
| 63 | +####Bash Scripts |
44 | 64 | Beyond the obvious need to be running the Bash shell, there are a few additional requirements needed to run these scripts (these requirements are also documented in the scripts themselves): |
45 | | -* A preexisting Taiga project (for those scripts using Taiga, of course) |
46 | | -* Curl (http://curl.haxx.se/) must be installed on host machine |
47 | | -* JQ (https://stedolan.github.io/jq/) must be installed on host machine |
48 | | -* pg_dump (http://www.postgresql.org/), part of a PostgreSQL package install, if you want to dump a PostgreSQL database. |
49 | 65 |
|
50 | | -> **Note:** While not so much a script requirements, their actions require administrative privileges as a Taiga user on the project(s) of interest. |
| 66 | +- A preexisting Taiga project (for those scripts using Taiga, of course) |
| 67 | +- Curl (http://curl.haxx.se/) must be installed on host machine |
| 68 | +- JQ (https://stedolan.github.io/jq/) must be installed on host machine |
| 69 | + |
| 70 | +####JavaScript Scripts |
| 71 | +The JavaScript version of the taiga_tasks solution expects JavaScript to be running in the browser. All other requirements are managed remotely through a set of external JavaScript libraries. |
51 | 72 |
|
52 | | -###About Bash |
53 | | -Yes, these scripts are written in [Bash](https://www.gnu.org/software/bash/ "Bash"). They've only ever been run and tested in Bash (under Ubuntu 14.04 LTS). Some day, it'd be a fine exercise to refactor these into something a bit more platform-agnostic like Python or Go. Until then, know that these scripts are bash scripts. |
| 73 | +> **Note:** While not so much a script requirements, these scripts sometimes require the administrative privileges of a Taiga user on the project(s) of interest. |
54 | 74 |
|
55 | 75 | ## License |
56 | 76 | This software is released under the GNU GENERAL PUBLIC LICENSE, Version 3. For details, see the license file in this project ([`license.md`](https://github.com/richbl/taiga-scripts/blob/master/LICENSE "License")). |
0 commit comments