TAT agent is an agent written in Rust, which run in CVM or Lighthouse instances.

Overview

TAT Agent

TAT agent is an agent written in Rust, which run in CVM or Lighthouse instances. Its role is to run commands remotely without ssh login, invoked from TencentCloud Console/API. Commands include but not limited to: shell, python, php, you can provide any script interpreter at first line, such as: #!/bin/bash, #!/usr/bin/env python3.8. See more info at https://cloud.tencent.com/product/tat .

prerequisites

run

make run

Run directly by cargo in debug mode with the test domain.

build

make release # on linux

Build a pure static binary in release mode with the real domain, need docker installed.

.\install\build.bat # on windows

stop

make stop

Stop the daemon by pid which was written in a pidfile.

other

See more details at Makefile.

supported OS

Binary can run at both Linux & Windows Distributions, including but not limited to:

  • Tencent Linux
  • CentOS
  • Ubuntu
  • Debian
  • openSUSE
  • SUSE
  • CoreOS
You might also like...
Rust implementation for Wlroots (Sway, Wayfire, Hikari, River, etc.) of Gnome Screenshot and Idle DBUS Server, which Upwork uses to capture the screen as proof of work.

🚀 upwork-wlroots-bridge 🚀 Rust Implementation for Wlroots (Sway, Wayfire, Hikari, River, etc.) of Gnome Screenshot and Idle DBUS Server (with extra

osu-link is a program which links osu!stable beatmaps to osu!lazer's new store format, saving you disk space.

osu-link is a program which links osu!stable beatmaps to osu!lazer's new store format, saving you disk space.

Simple tray application which shows battery level for HyperX Cloud Flight Wireless Headset.
Simple tray application which shows battery level for HyperX Cloud Flight Wireless Headset.

HyperX Cloud Flight Battery Monitoring Introduction Simple tray application which shows battery level for HyperX Cloud Flight Wireless Headset. Screen

📦  Crate Protocol allows anyone to create, manage, and trade a tokenized basket of assets, which we refer to as a Crate.
📦 Crate Protocol allows anyone to create, manage, and trade a tokenized basket of assets, which we refer to as a Crate.

📦 Crate Protocol Crate Protocol allows anyone to create, manage, and trade a tokenized basket of assets, which we refer to as a Crate. A Crate is alw

Pbot - pan93412's extensible userbot, which is full-documented, enginnered and based on Actor model.

pbot pan93412's extensible user bot, which is full-documented, engineered and based on Actor model. Usage Run cargo run --release [--features modules

Ampseer examines reads in fastq format and identifies which multiplex PCR primer set was used to generate the SARS-CoV-2 sequencing library they are read from.

Ampseer examines reads in fastq format and identifies which multiplex PCR primer set was used to generate the SARS-CoV-2 sequencing library they are read from.

The language that eats the stack. Heavily inspired by porth which is inspired off of forth

Snack The language that eats the stack. Heavily inspired by porth which is inspired off of forth Install To use Snack you will need Rust and fasm Afte

A Garry's Mod module that lets you check which fonts are available on the system

gm_fontsx Since apparently we're never getting a proper way to check for installed fonts on Garry's Mod, this has to exist 😒 Usage require("fontsx")

A simple library with just one struct which is used to wrap around pointers

A simple library with just one struct which is used to wrap around pointers. This can be used to create pointers and share them across threads without the hassle of synchronization if you really do not care about that.

Comments
  • I think we should support Mac OS

    I think we should support Mac OS

    When I fork local the following errors occur when compiling locally. The error log probably means that my cargo source cannot find the corresponding os

       Compiling procfs v0.12.0
    error[E0433]: failed to resolve: could not find `linux` in `os`
      --> /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/procfs-0.12.0/src/process/mod.rs:66:14
       |
    66 | use std::os::linux::fs::MetadataExt;
       |              ^^^^^ could not find `linux` in `os`
    
    error[E0425]: cannot find function `stat64` in crate `libc`
       --> /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/procfs-0.12.0/src/process/namespaces.rs:25:31
        |
    25  |             if unsafe { libc::stat64(cstr.as_ptr(), &mut stat) } != 0 {
        |                               ^^^^^^ help: a function with a similar name exists: `stat`
        |
       ::: /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.126/src/unix/mod.rs:726:5
        |
    726 |     pub fn stat(path: *const c_char, buf: *mut stat) -> ::c_int;
        |     ----------------------------------------------------------- similarly named function `stat` defined here
    
       Compiling http-body v0.1.0
    error[E0599]: no method named `st_mode` found for struct `Metadata` in the current scope
       --> /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/procfs-0.12.0/src/process/mod.rs:701:23
        |
    701 |             mode: (md.st_mode() as libc::mode_t) & libc::S_IRWXU,
        |                       ^^^^^^^ method not found in `Metadata`
        |
       ::: /Users/jameszow/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/std/src/os/macos/fs.rs:34:8
        |
    34  |     fn st_mode(&self) -> u32;
        |        ------- the method is available for `Metadata` here
        |
        = help: items from traits can only be used if the trait is in scope
    help: the following trait is implemented but not in scope; perhaps add a `use` for it:
        |
    55  | use std::os::macos::fs::MetadataExt;
        |
    
    error[E0599]: no method named `st_uid` found for struct `Metadata` in the current scope
       --> /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/procfs-0.12.0/src/process/mod.rs:759:23
        |
    759 |             owner: md.st_uid(),
        |                       ^^^^^^ method not found in `Metadata`
        |
       ::: /Users/jameszow/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/std/src/os/macos/fs.rs:38:8
        |
    38  |     fn st_uid(&self) -> u32;
        |        ------ the method is available for `Metadata` here
        |
        = help: items from traits can only be used if the trait is in scope
    help: the following trait is implemented but not in scope; perhaps add a `use` for it:
        |
    55  | use std::os::macos::fs::MetadataExt;
        |
    
    error[E0599]: no method named `st_mode` found for struct `Metadata` in the current scope
       --> /Users/jameszow/.cargo/registry/src/github.com-1ecc6299db9ec823/procfs-0.12.0/src/process/mod.rs:994:31
        |
    994 |                     mode: (md.st_mode() as libc::mode_t) & libc::S_IRWXU,
        |                               ^^^^^^^ method not found in `Metadata`
        |
       ::: /Users/jameszow/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/std/src/os/macos/fs.rs:34:8
        |
    34  |     fn st_mode(&self) -> u32;
        |        ------- the method is available for `Metadata` here
        |
        = help: items from traits can only be used if the trait is in scope
    help: the following trait is implemented but not in scope; perhaps add a `use` for it:
        |
    55  | use std::os::macos::fs::MetadataExt;
        |
    
    Some errors have detailed explanations: E0425, E0433, E0599.
    For more information about an error, try `rustc --explain E0425`.
    error: could not compile `procfs` due to 5 previous errors
    
    opened by Jzow 1
  • feat: release for v0.1.17.

    feat: release for v0.1.17.

    Main features includes:

    • Only create log file before process being really running.
    • Remove pid file after stop agent for sysvinit upgrade.
    • Remove todo because of v0.1.15 has been released.
    • Use x86_64 as default Windows target
    • Add sleep before ws thread panic reconnect.
    opened by hustclf 0
Releases(v0.1.17)
Owner
Tencent
Tencent
Buildomat manages the provisioning of ephemeral UNIX systems on which to run software builds

B U I L D O M A T a software build labour-saving device Buildomat manages the provisioning of ephemeral UNIX systems (e.g., instances in AWS EC2) on w

Oxide Computer Company 33 Dec 4, 2022
Yellhole is a lightweight tumblelog which can run on e.g. fly.io for cheap.

Yellhole A Hole To Yell In Yellhole is a lightweight tumblelog which can run on e.g. fly.io for cheap. Features Runs on a single node. Use a CDN if yo

Coda Hale 8 Dec 15, 2022
Agent library for Internet Computer, in Dart

An agent library built for Internet Computer, a plugin package for dart and flutter apps. Developers can build ones to interact with Dfinity's blockchain directly.

null 87 Dec 31, 2022
Telegram bot help you to run Rust code in Telegram via Rust playground

RPG_BOT (Rust Playground Bot) Telegram bot help you to run Rust code in Telegram via Rust playground Bot interface The bot supports 3 straightforward

TheAwiteb 8 Dec 6, 2022
Rust Keeper bots that run various functions, from liquidations, to orderbook cranks, and more.

The zo-keeper (pronounced "zoo keeper") repository runs large scale instructions that secure the 01 network, and allow it to operate in a fully decentralized manner.

Zero One Global Foundation 61 Dec 16, 2022
Run LLaMA inference on CPU, with Rust 🦀🚀🦙

LLaMA-rs Do the LLaMA thing, but now in Rust ?? ?? ?? Image by @darthdeus, using Stable Diffusion LLaMA-rs is a Rust port of the llama.cpp project. Th

Rustformers 2.7k Apr 17, 2023
Run LLaMA inference on CPU, with Rust 🦀🚀🦙

LLaMA-rs Do the LLaMA thing, but now in Rust ?? ?? ?? Image by @darthdeus, using Stable Diffusion LLaMA-rs is a Rust port of the llama.cpp project. Th

Rustformers 2.7k Apr 17, 2023
This is a public snapshot of Fly's init code. It powers every Firecracker microvm we run for our users.

Fly Init This is a public snapshot of Fly's init code. It powers every Firecracker microvm we run for our users. It is Rust-based and we thought makin

fly.io 186 Dec 30, 2022
Damavand is a quantum circuit simulator. It can run on laptops or High Performance Computing architectures, such CPU distributed architectures or multi GPU distributed architectures.

Damavand is a quantum circuit simulator. It can run on laptops or High Performance Computing architectures, such CPU distributed architectures or multi GPU distributed architectures.

MichelNowak 0 Mar 29, 2022
A Rust proc-macro crate which derives functions to compile and parse back enums and structs to and from a bytecode representation

Bytecode A simple way to derive bytecode for you Enums and Structs. What is this This is a crate that provides a proc macro which will derive bytecode

null 4 Sep 3, 2022