Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

aa-incursions

Package Overview
Dependencies
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aa-incursions

AllianceAuth Incursion Tools

Source
pipPyPI
Version
1.0.23b0
Maintainers
1

Incursions for Alliance Auth

Incursion Tools for Alliance Auth.

Features

  • AA-Discordbot Cogs for information about active incursions, their status and any set Focus

  • Webhook notifications for new incursions and them changing state (Mobilizing/Withdrawing)

  • Waitlist forked from TLA and heavily updated

Planned Features

  • Waitlist
  • AA Fittings Integration
  • Secure Groups Integration

Installation

Step 1 - Pre_Requisites

Incursions is an App for Alliance Auth, Please make sure you have this installed. Incursions is not a standalone Django Application

Incursions needs the App AA Routing in order to give the spawn bot context

Incursions needs the App AA Discord Bot for safe integration with the discord service and discord multiverse, it also delivers some future features

Incursions needs the App Corp Tools to feed the Waitlist and its Map Data. You can opt out of using the Waitlist and any of corp-tools auditing

Step 2 - Install app

pip install aa-incursions

Step 3 - Configure Auth settings

Configure your Auth settings (local.py) as follows:

  • Add the following INSTALLED_APPS in local.py
'incursions',
'corptools',
  • Add below lines to your settings file:
## Settings for AA-Incursions ##
# Route is Cached for 300 Seconds, if you aren't riding the Kundalini Manifest to the last minute
# Feel free to adjust this to minute='*/5'
CELERYBEAT_SCHEDULE['incursions_update_incursions'] = {
    'task': 'incursions.tasks.update_incursions',
    'schedule': crontab(minute='*/1', hour='*'),
}
# Routes are Cached for 5 Seconds
CELERYBEAT_SCHEDULE['incursions_update_all_fleets'] = {
    'task': 'incursions.tasks.update_all_fleets',
    'schedule': crontab(minute='*/1', hour='*'),
}

Step 4 - Maintain Alliance Auth

  • Run migrations python manage.py migrate
  • Gather your staticfiles python manage.py collectstatic
  • Restart your project supervisorctl restart myauth:

Step 5 - Pre-Load

Preload some expected incursion data. The frontend should adapt to any custom values But it is tested with these.

python manage.py loaddata waitlist_badges.json
python manage.py loaddata waitlist_category.json
python manage.py loaddata waitlist_category_rule.json
python manage.py loaddata waitlist_roles.json

Step 6 - Setup Waitlist Dependencies

The Waitlist was built to require a Server-Sent Event backend that i have not yet replaced.

Bare Metal

Generate a Secret with openssl rand -hex 32, use this later in secret=

git clone https://github.com/luna-duclos/waitlist-sse
docker buildx build . -t tla/sse --load
docker run -d -p 8001:8000 --env SSE_SECRET="0000000000000000000000000000000000000000000000000000000000000000" tla/sse

route sse.domain to localhost:8001 in Nginx

Docker

git clone https://github.com/luna-duclos/waitlist-sse

in NPM route sse.domain route to sse-server 8000 Generate a Secret with openssl rand -hex 32, use this in your docker compose Add the following to your Docker-Compose.yml

  sse-server:
    image: "tla/sse:latest"
    pull_policy: never
    build: ./waitlist-sse
    expose:
      - 8000
    environment:
      SSE_SECRET: "0000000000000000000000000000000000000000000000000000000000000000"

Waitlist Features Detail

Waitlist

Categories / Category Rules

For easy filtering of ships into basic categories for prioritization and fleet composition. Some functions of the waitlist expect at minimum Marauder Logi Vindi and Other, this is a work in progress The Sponge category is for anything that lowers the isk/hr of the fleet, like Ishtars

Badges

Badges are both medals of Merit and a sign of recognition that you have met a series of requirements at a glance. You may use Logi to dictate known quality Logistics pilots to prioritise Or use DPS / Alt to highlight a player has met a series of DPS / Skills / Fitting Requirements Badges are fully dynamic and you can assign as many or as

Roles

You May be familiar with Roles or Commanders from other HS waitlists. This feature has been intentionally stripped. Use AA Groups instead.

Approved Fittings / Approved Implants

the /fits page and the fits that ships are compared to are fully dynamic from the DB. The implants are not yet, that frontend page is still hardcoded, but they are used for backend comparison

Permissions

CodenamePermDescription
basic_waitlistWaitlist AccessCan Access the Waitlist Application
waitlist_alts_viewView - all of a users Alts ! Danger?
waitlist_announcements_manageAnnouncements - Manage
waitlist_badges_viewBadges - View
waitlist_badges_manageBadges - Manage
waitlist_bans_viewBans - View
waitlist_bans_manageBans - Manage
waitlist_documentation_viewDocumentation - View
waitlist_fleet_viewFleet Composition
waitlist_history_viewFleet History
waitlist_notes_viewNotes - View
waitlist_notes_manageNotes - Manage
waitlist_searchSearch
waitlist_stats_viewFleet Stats
waitlist_skills_viewSkills
waitlist_pilot_viewPilot Information
# Waitlist Context Permissions
waitlist_context_aContext: Number of Pilots
waitlist_context_bContext: Ship Types
waitlist_context_cContext: Time in Waitlist
waitlist_context_dContext: Pilot Names
waitlist_implants_viewContext: Implants
waitlist_manage_waitlistWaitlist Manage
waitlist_manage_waitlist_approve_fitsWaitlist Manage Fits
# ESI Permissions
waitlist_esi_show_infoShow Info
waitlist_esi_searchSearch - ESI

Settings

NameDescriptionDefault
SSE_SITE_URLThe Site URL for the SSE server, usually sse.example.comGENERATED FROM CODE
SSE_SECRETMust Match in local.py and the SSE Docker Container"0000000000000000000000000000000000000000000000000000000000000000"
INCURSIONS_AUTO_HIGHSEC_FOCUSWhether or not to set the current Focus to a new HS spawn automaticallyTrue
INCURSIONS_SCOPES_BASENot really used, Corp-Tools controls auditing["publicData", "esi-skills.read_skills.v1", "esi-clones.read_implants.v1"]
INCURSIONS_SCOPES_FCNot really optional, R/W Fleet, Open Window and Search (yes its named badly)["esi-fleets.read_fleet.v1", "esi-fleets.write_fleet.v1", "esi-ui.open_window.v1", "esi-search.search_structures.v1"]

Contributing

Make sure you have signed the License Agreement by logging in at https://developers.eveonline.com before submitting any pull requests. All bug fixes or features must not include extra superfluous formatting changes.

Keywords

allianceauth

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts