Commit Graph

51 Commits

Author SHA1 Message Date
Pragmatic Software 8e3652bc8e
pbot-vm: gdb() needs __asm__() instead of asm() 2024-04-17 00:37:36 -07:00
Pragmatic Software ddeeb5da0f
pbot-vm: update de-optimization for gdb() function 2024-04-16 23:41:37 -07:00
Pragmatic Software e4cb6ceff6
pbot-vm: simplify `network` script slightly 2024-04-12 13:12:41 -07:00
Pragmatic Software 111f3bd2e7
pbot-vm: consolidate network enable/disable into one script 2024-04-12 13:07:27 -07:00
Pragmatic Software 9ef521309a
pbot-vm: update documentation about how to start PBot VM after reboot 2024-04-10 13:09:58 -07:00
Pragmatic Software e25bde159f
pbot-vm: ignore -health and -revert used simultaneously to prevent double-revert 2024-04-10 12:53:37 -07:00
Pragmatic Software 3f98aced62
pbot-vm: minor Vagrant documentation tweak 2024-04-10 02:35:33 -07:00
Pragmatic Software 17b69f04ff
pbot-vm: massive refactor
* replace heartbeat with health-check
  * instead of steady stream of newlines every 5s, now awaits input
    and responds with `vmstat` output

* more reliably use host/config/vm-exec.json to get libvirt domain name
  for snapshot-revert, server address, serial ports, vagrant setting, etc

* use iptables/nftables to disable networking
  * added guest/bin/disable-network-[iptables,nftables]
  * added guest/bin/enable-network-[iptables,nftables]

* replace ugly ___OUTPUT___ texts in sh, bash, ksh, zsh languages

* documentation updates and tweaks
2024-04-10 01:21:18 -07:00
Pragmatic Software 826fd79d71
pbot-vm: reduce noisy output in Scheme language 2024-04-07 17:19:38 -07:00
Pragmatic Software a3ab27dbac
pbot-vm: documentation tweaks 2024-04-04 12:23:45 -07:00
Pragmatic Software 2547f035a1
pbot-vm: add experimental Vagrant provisioning 2024-04-04 03:41:58 -07:00
Pragmatic Software 09aed30893
pbot-vm: add PBOTVM_ADDR env var to set address of vm-server 2024-03-31 17:36:36 -07:00
Pragmatic Software a923b505fa
pbot-vm: tumbleweed provision: add missing gcc package 2024-03-30 21:06:44 -07:00
Pragmatic Software 446857ffbf
pbot-vm: provision non-interactively 2024-03-30 20:48:45 -07:00
Pragmatic Software 0829265ef8
pbot-vm: `setup-guest` auto-detects OS/distro and runs provisioning scripts 2024-03-30 19:41:50 -07:00
Pragmatic Software 91f8547aed
pbot-vm: add Tumbleweed orchestration script
Fix Java language missing `/bin/sh` in execute()
Update brainfck language to use `bff`
2024-03-30 16:49:09 -07:00
Pragmatic Software 59090b39e7
pbot-vm: update VirtualMachine.md with improved PTY console install instructions and misc tweaks 2024-03-27 14:21:32 -07:00
Pragmatic Software 06650963a3 applets/pbot-vm: increase length to trigger "Same output" 2023-04-28 00:48:37 -07:00
Pragmatic Software 0cd4ce5220 pbot-vm: guest-server: update serial ports 2023-03-13 13:33:10 -07:00
Pragmatic Software 3ada433527 Refactor UTF-8 fix 2023-03-12 18:28:50 -07:00
Pragmatic Software b9a89e10d6 Fix UTF-8 encoding 2023-03-12 18:10:44 -07:00
Pragmatic Software 6565c516e9 pbot-vm: remove "command:" text from -paste output 2023-03-12 16:12:58 -07:00
Pragmatic Software e736051de5 Fix UTF-8 encoding 2023-03-12 16:06:04 -07:00
Pragmatic Software 7da7883d9d pbot-vm: guest-gdb: stricter match for main() 2023-02-09 21:04:30 -08:00
Pragmatic Software 224a00949a pbot-vm: guest-gdb: fix potential undefined `$start` when optimizations are enabled 2023-02-09 13:39:10 -08:00
Pragmatic Software 19d8170af3 applets/pbot-vm: vm-server: fix child signal handler 2023-01-24 12:34:03 -08:00
Pragmatic Software 77a24faf02 applets/pbot-vm: add -vm option to help output 2022-12-25 18:12:32 -08:00
Pragmatic Software e7f4729567 pbot-vm: rebuild without print_last_statement() if "cannot subscript something" error 2022-05-01 10:30:34 -07:00
Pragmatic Software 4b5d8aa535 pbot-vm: use %02X for escapes; do not escape \x03 (for IRC colors) 2022-04-08 13:12:37 -07:00
Pragmatic Software 3d311296eb pbot-vm: output postprocessing: escape control characters/unprintable characters 2022-04-07 18:24:57 -07:00
Pragmatic Software 690c5f5c44 pbot-vm: Add newline to output only if output does not already have a newline 2022-04-07 18:21:54 -07:00
Pragmatic Software 3375580a2d pbot-vm: fix parsing of quoted text within GDB/MI 2022-04-06 10:53:07 -07:00
Pragmatic Software 1c57e01fad pbot-vm: escape malformed Unicode on STDOUT 2022-04-04 22:32:53 -07:00
Pragmatic Software 110912e85d pbot-vm: use coderef to simplify escaping of malformed Unicode 2022-04-04 22:10:50 -07:00
Pragmatic Software 5bc47b61d9 pbot-vm: display escaped malformed Unicode in output instead of U+FFFD 2022-04-04 21:54:39 -07:00
Pragmatic Software 757088987d pbot-vm: fix invalid character encountered in JSON string 2022-04-04 21:41:27 -07:00
Pragmatic Software 4535881898 pbot-vm: fix whitespace issue with `"string"[n]` 2022-04-04 17:17:57 -07:00
Pragmatic Software 03fb901291 pbot-vm: fix potential time-out when outputting 0
If the output from a code snippet is `0` without a newline,
Perl treats this as a false value. When Guest::process_command()
returns a false value, that signals to guest-server::serial_server()
that it is the parent returning and so it will not send the result back
to the host.

However, `0\n` is a true value. Solution: always append a final newline to
the guest output.
2022-03-31 19:52:46 -07:00
Pragmatic Software 1f3110075a pbot-vm: fix clang2x 2022-03-19 21:50:43 -07:00
Pragmatic Software 02ca5e4435 pbot-vm: add C2X language files; default `cc` to C2X 2022-03-19 21:31:58 -07:00
Pragmatic Software fcb39511c3 pbot-vm: restore stdin for default languages 2022-03-16 12:18:11 -07:00
Pragmatic Software 01cefe462f pbot-vm: fix occasional "illegal escape sequence" in guest-gdb 2022-03-15 13:53:34 -07:00
Pragmatic Software 46ccc1fb70 pbot-vm: prevent [Exit 1] output with compiler errors 2022-03-06 14:07:28 -08:00
Pragmatic Software 3e2204a6b0 pbot-vm: improve exit-code handling 2022-03-06 13:51:33 -08:00
Pragmatic Software 66856441e4 pbot-vm: do not decode non-printable characters 2022-02-24 12:55:27 -08:00
Pragmatic Software 76fd5f5fd7 pbot-vm: fix encoding issues; misc clean-ups 2022-02-24 10:39:15 -08:00
Pragmatic Software 55b203126c Fix typo in comment 2022-02-18 12:46:33 -08:00
Pragmatic Software 8b5428f77b pbot-vm: `vm-exec -lang=?` once again lists languages without needing <code> argument 2022-02-18 12:45:28 -08:00
Pragmatic Software 3fdfb789df pbot-vm: Fix add_option() 2022-02-15 11:40:06 -08:00
Pragmatic Software 951b771b9c pbot-vm: vm-exec can now select VM; can be configured by vm-exec.json file
The vm-exec command now recognizes the following options:

    -vm-serial -vm-heart -vm-cid -vm-vport -vm

The -vm option accepts a name and configures the serial,
heart, cid and vport appropriately.

The vm-exec command can be configured by /host/config/vm-exec.json.
2022-02-15 11:28:47 -08:00