2021-01-26 01:58:39 +03:00
# [![Activity](https://img.shields.io/github/commit-activity/m/EpicMorg/atlassian-downloader?label=commits&style=flat-square)](https://github.com/EpicMorg/atlassian-downloader/commits) [![GitHub issues](https://img.shields.io/github/issues/EpicMorg/atlassian-downloader.svg?style=popout-square)](https://github.com/EpicMorg/atlassian-downloader/issues) [![GitHub forks](https://img.shields.io/github/forks/EpicMorg/atlassian-downloader.svg?style=popout-square)](https://github.com/EpicMorg/atlassian-downloader/network) [![GitHub stars](https://img.shields.io/github/stars/EpicMorg/atlassian-downloader.svg?style=popout-square)](https://github.com/EpicMorg/atlassian-downloader/stargazers) [![Size](https://img.shields.io/github/repo-size/EpicMorg/atlassian-downloader?label=size&style=flat-square)](https://github.com/EpicMorg/atlassian-downloader/archive/master.zip) [![Release](https://img.shields.io/github/v/release/EpicMorg/atlassian-downloader?style=flat-square)](https://github.com/EpicMorg/atlassian-downloader/releases) [![Downloads](https://img.shields.io/github/downloads/EpicMorg/atlassian-downloader/total.svg?style=flat-square)](https://github.com/EpicMorg/atlassian-downloader/releases) [![GitHub license](https://img.shields.io/github/license/EpicMorg/atlassian-downloader.svg?style=popout-square)](LICENSE.md) [![Changelog](https://img.shields.io/badge/Changelog-yellow.svg?style=popout-square)](CHANGELOG.md)
2021-01-13 16:40:51 +03:00
# Atlassian Downloader
2022-09-22 17:22:32 +03:00
Console app written with `c#` and `dotnet6` for downloading all avalible products from `Atlassian` . Why not?
2021-01-13 16:40:51 +03:00
2022-09-22 17:40:23 +03:00
![Atlassian Downloader ](https://rawcdn.githack.com/EpicMorg/atlassian-downloader/87f1d7fd4e3f22b29b4be87d02d80dd0b3e0280e/.github/media/screenshot-01.png )
![Atlassian Downloader ](https://rawcdn.githack.com/EpicMorg/atlassian-downloader/87f1d7fd4e3f22b29b4be87d02d80dd0b3e0280e/.github/media/screenshot-03.png )
2021-01-13 16:49:41 +03:00
2023-08-25 01:26:41 +03:00
## Requirements
2021-08-22 02:10:28 +03:00
1. Preinstalled`*` `dotnet6` . Download [here ](https://dotnet.microsoft.com/download/dotnet/6.0 ).
2021-01-15 02:19:31 +03:00
2. Supported OS: `win32/win64` , `linux` , `macosx` , `arm/arm64`
2021-01-13 16:40:51 +03:00
2021-08-22 02:10:28 +03:00
`*` since version `1.0.0.4` application build asstandalone package and do not requre preinstalled `dotnet6` .
2021-01-19 16:05:37 +03:00
# How to...
## ..bootstrap from scratch
2021-01-13 16:40:51 +03:00
1. `git clone` this repo.
2021-01-13 16:49:41 +03:00
2. `cd` to `<repo>/src` .
2023-04-17 14:50:39 +03:00
3.1 execute `dotnet run` in `src` folder.
2021-01-19 16:05:37 +03:00
or
3.2 execute `build.bat(sh)` in `src` folder.
2021-01-15 02:24:30 +03:00
4. by default all data will be downloaded to `src/atlassian` folder and subfolders.
2021-01-19 16:05:37 +03:00
## ..install
2021-01-26 01:58:39 +03:00
1. download latest [![Downloads ](https://img.shields.io/github/downloads/EpicMorg/atlassian-downloader/total.svg?style=flat-square )](https://github.com/EpicMorg/atlassian-downloader/releases) [![Release ](https://img.shields.io/github/v/release/EpicMorg/atlassian-downloader?style=flat-square )](https://github.com/EpicMorg/atlassian-downloader/releases)
2021-01-19 16:07:57 +03:00
2. ...
3. profit!
2021-01-19 16:05:37 +03:00
2023-04-17 15:01:18 +03:00
# Intall via Chocolatey
| CLI | Version | Downloads
| ------ | ------ | ------
| :computer: `choco install atlassian-downloader` | [![Version ](https://img.shields.io/chocolatey/v/atlassian-downloader?label=version&style=for-the-badge )](https://chocolatey.org/packages/atlassian-downloader/) | [![Version ](https://img.shields.io/chocolatey/dt/atlassian-downloader?style=for-the-badge )](https://chocolatey.org/packages/atlassian-downloader/)
2021-01-19 16:07:57 +03:00
# Usage and settings
2021-01-19 16:05:37 +03:00
## CLI args
2021-01-15 02:24:30 +03:00
2022-09-22 17:40:23 +03:00
![Atlassian Downloader ](https://rawcdn.githack.com/EpicMorg/atlassian-downloader/87f1d7fd4e3f22b29b4be87d02d80dd0b3e0280e/.github/media/screenshot-02.png )
2021-01-20 01:08:49 +03:00
2021-01-15 02:24:30 +03:00
```
2021-01-19 16:05:37 +03:00
atlassian-downloader:
Atlassian archive downloader. See https://github.com/EpicMorg/atlassian-downloader for more info
2021-01-15 02:24:30 +03:00
Usage:
atlassian-downloader [options]
Options:
2021-01-20 01:01:26 +03:00
--output-dir < output-dir > Override output directory to download [default: atlassian]
--custom-feed < custom-feed > Override URIs to import [default: ]
2021-01-19 16:05:37 +03:00
--action < Download | ListURLs | ListVersions | ShowRawJson > Action to perform [default: Download]
2021-01-20 01:01:26 +03:00
--version Show credits banner [default: False]
2023-05-12 13:30:00 +03:00
--product-version < product-version > Override target version to download some product. Advice: Use it with "customFeed". [default: ]
2021-01-19 16:05:37 +03:00
-?, -h, --help Show help and usage information
2021-01-15 02:24:30 +03:00
```
2021-01-20 01:08:49 +03:00
2023-04-17 14:50:39 +03:00
## Example of usage:
2022-09-23 18:21:13 +03:00
2022-09-23 18:33:37 +03:00
### How to download it all at first time, or get update of local archive
2022-09-23 18:21:13 +03:00
```
2022-09-23 18:22:49 +03:00
PS> .\atlassian-downloader.exe --output-dir "P:\Atlassian"
2022-09-23 18:21:13 +03:00
or
bash# ./atlassian-downloader --output-dir "/mnt/nfs/atlassian"
```
2022-09-23 18:33:37 +03:00
If you already have some folders at output path - they will be ignored and not be downloaded again and skipped. Downloader will be download only new versions of files which not be present locally yet.
### Set only some url feed and dowload it:
```
PS> .\atlassian-downloader.exe --output-dir "P:\Atlassian" --custom-feed https://my.atlassian.com/download/feeds/current/bamboo.json
or
bash# ./atlassian-downloader --output-dir "/mnt/nfs/atlassian" --custom-feed https://my.atlassian.com/download/feeds/current/bamboo.json
```
2022-09-23 18:21:13 +03:00
2022-09-23 18:33:52 +03:00
### cron or crontab example
```
0 0 * 1 0 /opt/epicmorg/atlassian-downloader/atlassian-downloader --output-dir "/mnt/nfs/atlassian"
```
2022-09-23 18:21:13 +03:00
### Show only urls from jsons
```
2022-09-23 18:22:49 +03:00
PS> .\atlassian-downloader.exe --action ListURLs
or
2022-09-23 18:21:13 +03:00
bash# ./atlassian-downloader --action ListURLs
```
2021-01-20 01:08:49 +03:00
2021-01-19 16:05:37 +03:00
## Additional settings
File `src/appSettings.json` contains additional settings, like [loglevel ](https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.loglevel?view=dotnet-plat-ext-5.0#fields ) and [console output theme ](https://github.com/serilog/serilog-sinks-console ). You can set it up via editing this file.
### Supported log levels
| Level | Enum | Description
2021-01-19 16:07:57 +03:00
|-------------|:-------------:|-------------|
2021-01-19 16:05:37 +03:00
| `Critical` | `5` | Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires immediate attention.
| `Debug` | `1` | Logs that are used for interactive investigation during development. These logs should primarily contain information useful for debugging and have no long-term value.
| `Error` | `4` | Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a failure in the current activity, not an application-wide failure.
| `Information` | `2` | Logs that track the general flow of the application. These logs should have long-term value.
| `None` | `6` | Not used for writing log messages. Specifies that a logging category should not write any messages.
| `Trace` | `0` | Logs that contain the most detailed messages. These messages may contain sensitive application data. These messages are disabled by default and should never be enabled in a production environment.
| `Warning` | `3` | Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the application execution to stop.
### Supported console themes
The following built-in themes are available, provided by `Serilog.Sinks.Console` package:
* `ConsoleTheme.None` - no styling
* `SystemConsoleTheme.Literate` - styled to replicate _Serilog.Sinks.Literate_ , using the `System.Console` coloring modes supported on all Windows/.NET targets; **this is the default when no theme is specified**
* `SystemConsoleTheme.Grayscale` - a theme using only shades of gray, white, and black
* `AnsiConsoleTheme.Literate` - an ANSI 16-color version of the "literate" theme; we expect to update this to use 256-colors for a more refined look in future
* `AnsiConsoleTheme.Grayscale` - an ANSI 256-color version of the "grayscale" theme
* `AnsiConsoleTheme.Code` - an ANSI 256-color Visual Studio Code-inspired theme
2021-01-13 16:40:51 +03:00
2021-01-19 16:05:37 +03:00
# Supported products:
2021-01-13 16:40:51 +03:00
2021-01-15 02:19:31 +03:00
| Product | Current | Archive | EAP |
|-------------|:-------------:|:-------------:|:-------------:|
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Bamboo&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/bamboo) | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Bitbucket%20(Stash )& color=bright%20green& style=for-the-badge)](https://www.atlassian.com/software/bitbucket) | :white_check_mark: | :white_check_mark: | :interrobang: |
2023-05-12 13:17:02 +03:00
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Bitbucket%20(Mesh )& color=bright%20green& style=for-the-badge)](https://confluence.atlassian.com/bitbucketserver/bitbucket-mesh-compatibility-matrix-1127254859.html) | :white_check_mark: | :white_check_mark: | :interrobang: |
2021-01-15 02:19:31 +03:00
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Clover&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/clover) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Confluence&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/confluence) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Crowd&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/crowd) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Crucible&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/crucible) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=FishEye&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/fisheye) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Jira%20Core&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/jira/core) | :white_check_mark: | :white_check_mark: | :x: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Jira%20Software&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/jira) | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=Jira%20Servicedesk&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/jira/service-management) | :white_check_mark: | :white_check_mark: | :white_check_mark: |
2021-01-19 16:13:16 +03:00
| [![Product ](https://img.shields.io/static/v1?label=Atlassian&message=SourceTree&color=bright%20green&style=for-the-badge )](https://www.atlassian.com/software/sourcetree) | :white_check_mark: | :white_check_mark: | :x: |
2021-01-15 02:19:31 +03:00
* Archive of `Atlassian` jsons available [here ](https://github.com/EpicMorg/atlassian-json ).
2021-01-13 16:40:51 +03:00
2021-01-15 02:19:31 +03:00
------
2021-01-14 16:42:21 +03:00
2021-01-15 02:19:31 +03:00
## Authors
* [@kasthack ](https://github.com/kasthack ) - code
* [@stam ](https://github.com/stamepicmorg ) - code, repo