Giter Club home page Giter Club logo

astra's Introduction

Table of Contents

  1. Astra
    1. Stage 1 - Prep [6/6]
    2. Stage 2 - Data(and Project Automation) [1/3]
    3. Stage 3 - RL Software integrations [0/2]
    4. Stage 4 - Operations [0/3]
      1. For re-usable missions: [0/1]
      2. Starlink(s) [0/0]
      3. Long running, real time ops [0/0]
    5. Stage 5 - Stream Real Time Ops [0/0]
    6. Backlog/As Needed [0/2]
    7. KSP Mod Requirements
    8. On Hold

Astra

STRT Stage 1 - Prep [6/6]

  • Script or Ansible or etc. Out Packer Script provisioner(getting long and unweildy)
  • Base VM Image(Packer) [14/14]
    • Change KSP version from 1.9.1 to 1.8.1 in SpaceX Pack craft files
    • Add vehicles to Astra game save VAB
    • Figure out how to get a systemd --user instance running on Astra user
    • Systemd user service to start game
      • added systemd service/linger config, but may need to set XDGRUNTIMEDIR var in the systemd task as shown here.
    • Figure something out w/ firewall
      • I think leaving the image as is, and opening the kRPC Ports via a TF provisioner combined w/ the HTTP Datasource(to get ifconfig.me data) will be a good solution
    • Automate mod install [6/6]
      • KK’s SpaceX Pack
      • RO via CKAN
      • Principia
      • Install CKAN.deb
      • kRPC manually from github
      • AutoLoadGame - Allista
    • astra-base.sfs
      • Might need to hop into a graphical run to get the minimal base + mods setup
    • AutoLoadGame.conf
    • settings.cfg
    • krpc-settings.cfg
    • AutoLoadGame - Now supports specifying SFS files
    • POC kRPC - connection over Internet successful, responses receieved
    • Install KSP 1.7.3 1.8.1 from S3
    • File provision packer/files/*
  • Automate game-archiver
  • Choose kRPC client language - C++
  • VLC/Xvfb workflow for graphical debugging and SFS building
  • Debug RO Install, problems w/ Kopernicus?

TODO Stage 2 - Data(and Project Automation) [1/3]

  • Restructure project
    • Split Components into own repos [3/5]
      • Game
      • Image builder
      • Ansible Pull ALL game assets(mods) from s3
        • Canceling splitting out ansible, I think it is fairly tightly coupled with the image anyway, will always want to test both togehter. Am still moving all assets to s3 however.
      • Save ALL game assets locally, in s3, as a release asset in github, and tar’d to google drive
      • Terraform module
  • Update Terraform modules to Vultr v2 Provider
  • Set up client w/ all kRPC Data Stream
    • Pipe into GMAT and OpenMCT ??? - yes

TODO Stage 3 - RL Software integrations [0/2]

TODO Stage 4 - Operations [0/3]

[-] For re-usable missions: [0/1]

  1. Will need something like FMRS implemented via kRPC

[-] Starlink(s) [0/0]

[-] Long running, real time ops [0/0]

TODO Stage 5 - Stream Real Time Ops [0/0]

TODO Backlog/As Needed [0/2]

  • If TCP latency becomes a problem, try implementing a kRPC unix socket comm. protocol
  • Need to implement an automated Xvfb workflow using screenshots to debug Automation
    • There are module load errors in KSP.log, not sure if its preventing AutoLoadGame from doing its thing, or if that is related to the Changelog startup dialog in KSP Main Menu. KSP 1.8.1 Works great
    • Why are we stuck at the Change Log dialog on KSP Start? A bit annoying but appears to be inconsequential for my automation purposes.
      • ksp settings.cfg:
        • SHOWWHATSNEWDIALOG = False
        • Version 1.7.3 was not honoring settings.cfg, lets see if 1.8.1 works Still not honored in 1.8.1 but again, appears inconsequential
  • Split Project into multiple repos [0/3]
    • Terraform [0/2]
      • Modules
      • Plans
    • Packer Base Image
    • Astractl

KSP Mod Requirements

  • AutoLoadGame - by Allista, allows creating a configuration file in your saves dir that will automatically load the specified sfs file upong game start.
  • kRPC - kRPC allows you to control Kerbal Space Program from scripts running outside of the game.
  • Realism Overhaul - Its not certain this will place nice with kRPC, however realistic(ish?) control theory is really the purpose of this project so we will proceed with it until/unless we encounter problems.
  • kOS - kOS might be useful for some simpler tasks where we don’t want the full power of kRPC. Might use, might not. We’ll see.

On Hold

  • Properly version Packer builds
    • dev builds by commit short SHA
    • “Prod” builds by Releae Tag

astra's People

Contributors

oogy avatar

Watchers

 avatar  avatar

astra's Issues

Stage 1.5 - Triply backup assets

Archive and store game assets in s3, locally, and tar'd to google.

Locations:

  • Local
  • S3
  • Google Drive

Assets:

  • krpc server 0.4.9.1 and clients
  • krpc python client
  • krpc lua client
  • krpc csharp client
  • krpc cnano client
  • krpc cpp client
  • Allistas AutoLoadGame 1.0.10
  • Principia Galois 1.9.1

Stage 2 - Initial R&D

  • List of necessary streams
  • Potential ways of structuring stream API (needs to be fast)
  • Try to identify any possible latency issues we may run into

Stage 1.5 - Pull all possible assets from s3 in ansible

Some of the less active assets used(e.g. kRPC Haeena fork) has the potential to be removed at anytime, as we are pinning all software to KSP 1.8.1 it is fine to privately archive all of these for redundancy and pull directly from S3.

  • krpc server 0.4.9.1 and clients
  • krpc python client
  • krpc lua client
  • krpc csharp client
  • krpc cnano client
  • krpc cpp client
  • Allistas AutoLoadGame 1.0.10
  • Principia Galois 1.9.1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.