Melts
Melts is the product that allows downloading the End Users (Fluid Attacks customers) code repositories and a few other utilities that End Users (Fluid Attacks hackers) require now and then like checking if a group is active, if it has Forces, its language, among other functions.
Using Melts
Make sure you have the following tools installed in your system:
Make sure you have an API token from the ARM, and that you put its value in an environment variable named
INTEGRATES_API_TOKEN
.You can export this variable permanently by adding the following line at the end of your shell startup file (usually
~/.bashrc
):export INTEGRATES_API_TOKEN="your-integrates-api-token"
Now close the terminal and open it again, or run:
$ source ~/.bashrc
Now you can use melts by calling:
$ m gitlab:fluidattacks/universe@trunk /common/melts
Feel free to pass the --help flag to learn more about the things it can do for you.
Code repositories in a given group can be downloaded by executing:
$ m gitlab:fluidattacks/universe@trunk /common/melts pull-repos --group {group_name}
To download a specific code repository, it can be done by passing an additional argument:
$ m gitlab:fluidattacks/universe@trunk /common/melts pull-repos --group {group_name} --root {nickname}
Troubleshooting
In case you encounter any errors while using Melts, there are a couple of things you can try to fix them:
- The first thing you should do is follow the installation instructions again.
- The next thing you can check
is if your
INTEGRATES_API_TOKEN
hasn't expired, for this you only need to repeat the steps shown here for updating your API token, and be aware of when it will expire next. - Another thing that
may be causing issues
is a conflict in your environment variables
that are taken when you log into AWS,
so you can try deleting this information
and logging in again.
In order to do this
use the command
rm -rf ~/.aws/credentials
before logging in, if that doesn't work then userm -rf ~/.okta*
as well. After doing this and logging in with the appropriate credentials and choosing the correct role, if applicable, you should have solved any problems regarding permissions. - If none of these work,
get in contact
with the
Fluid Attacks
team sending an e-mail to [email protected] to assist you with any problems.
Architecture
- Melts is a CLI written in Python. It communicates with the Integrates API and reports stability problems in the source code to Bugsnag.
- Melts is distributed to the End Users using Makes.
You can right-click on the image below to open it in a new tab, or save it to your computer.
Contributing
Please read the contributing page first.
Development Environment
Follow the steps in the Development Environment section of our documentation.
When prompted for an AWS role, choose dev
,
and when prompted for a Development Environment, pick melts
.
Local Environment
Just run:
universe $ m . /common/melts
This will build and run the Melts CLI application, including the changes you've made to the source code.