Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Welcome to our site

Take a moment to join our board

Recommended Posts

Introduction

Lines is a cross-platform system administration and software automation toolkit, leveraging golang for networking and parallel tasks. Command-line tools under Lines each focus on a task that can be performed in parallel, yielding faster results and offering some unique functionality. It's a project I got started to help accelerate some tasks at work and test Conquer Online servers. To get started, download the release binaries or build from source using the instructions below. I'll be adding to it as I go. Check out my Trello for some of the ideas I have.

Build Instructions

To build from source, run the following commands. Building requires the Golang compiler for lines source code, and goutil tools for code generation of system calls (fetched in the commands below).

go get -u -d -v warry.io/lines/...
go install -v warry.io/lines/...

Tools

  • exec: runs programs and clocks the overall execution time
  • fetch: sends an HTTP GET request
  • post: sends an HTTP POST request with either a form or file body
  • serve: serves a file system using a web server multiplexer

Links

Github: https://github.com/garethwarry/lines
Trello: https://trello.com/b/MxoRqm0H/lines

  • Like 1

Share this post


Link to post
Share on other sites

@Leo you mentioned you were using this professionally at work. What are some of the use cases you find this application really filled so much that you developed it? Possibly an example?

Share this post


Link to post
Share on other sites

I'm under an NDA, so I can't specify much. Right now I'm using it to host a website for testing frameworks on. I use it unprofessionally as the new x tool for checking which Conquer Online web servers I can overload from only one tool flooding requests. Helpful for finding performance issues with requests. You can also host a file system's executables as a web API and it returns the shell response as the HTTP response. I haven't created a lot of the tools yet or flushed out all the functionality they'll eventually provide. Studying technologies at home right now, so not much time for developing on this specifically.

  • Like 1

Share this post


Link to post
Share on other sites

Did a lot of work today on this. Added a "post" utility for making HTTP post requests. You can either specify a file for the body of the request (in which case the MIME type will be filled in for you based on the extension, or you may specify it manually), or form data from a JSON formatted file. I also added a JSON file cookie store (optional) for between requests for both fetch and post. That way, a cookie based authentication session can be maintained between requests. In addition, I've updated my trello and started work on a new tool for html tokenization. Happy with the results so far, and even happier that I'm getting use out of it at work. Cheers!

Share this post


Link to post
Share on other sites

You should support other http methods such as put and delete too.

Share this post


Link to post
Share on other sites
On 5/4/2018 at 6:07 AM, bauss said:

You should support other http methods such as put and delete too.

I'll look into doing that, but it's not often that I see those methods in use. Can a browser even use PUT and DELETE?

Share this post


Link to post
Share on other sites
On 5/5/2018 at 5:06 PM, Leo said:

I'll look into doing that, but it's not often that I see those methods in use. Can a browser even use PUT and DELETE?

AJAX my friend.

Technically forms can do it, but it doesn't make much sense for them to be anything, but POST.

Edited by bauss

Share this post


Link to post
Share on other sites
On 5/9/2018 at 5:53 AM, bauss said:

AJAX my friend.

Technically forms can do it, but it doesn't make much sense for them to be anything, but POST.

I'm refactoring lines to separate common components into their own packages / repos and add pipe support, so I'll see what I can do to support put and delete. Going to take a short break though due to the car crash. It really put a stop to my steam. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By Spirited
      Introduction
      This is a simple command-line tool for editing portals in dmaps. It outputs a list of portals from a dmap in the format index,x,y, and allows you to write them back to the dmap in the same format. It can be compiled for Windows, Linux, or Mac using the Golang compiler, and I have attached the Windows build of the tool. I wrote the tool in about an hour, so it's a bit messy, but all open source and MIT licensed for whoever wants to do something with it. Figured that I'd write it on the third request.
      Links
      https://spirited.io/project/portals/
×

Important Information

By using this site, you agree to our Terms of Use.