Commit Graph

223 Commits

Author SHA1 Message Date
Nikolay Edigaryev 2be5eedeb6
Try to set a SUID bit on Softnet using Sudo before failing (#421)
* Try to set a SUID bit on Softnet using Sudo before failing

* .cirrus.yml: switch to the new Mac machine
2023-02-17 08:50:57 +04:00
fedor 9f1f3f1b40 Fixed link 2023-02-11 11:36:41 -05:00
Fedor Korotkov b26398f51f
[blog] Changing Tart License (#414)
* [blog] Changing Tart Licence

* Fixed typo
2023-02-11 11:34:21 -05:00
Fedor Korotkov 78f7ba8f80
Remove Reporting (#411) 2023-02-09 20:47:54 +04:00
Fedor Korotkov b242f27f49
Ignore GC errors (#405)
* Ignore GC errors

Such errors are not critical

* Print GC error to stderr
2023-02-09 00:15:34 +04:00
Nikolay Edigaryev b566d07bc4
Avoid URL.formatted() method (#408) 2023-02-08 06:52:01 -05:00
Fedor Korotkov d65f530bcb
Updated data (#406) 2023-02-07 23:56:23 -05:00
Fedor Korotkov def779e20b
Report to Sentry instead of Puppy (#402)
Instead of logging locally let's report to Sentry.
2023-02-07 20:04:45 +04:00
Khachatur Ashotyan 92b35dbcf2
Add Krisp logo in users section (#403) 2023-02-07 19:06:57 +04:00
Fedor Korotkov b8ff7474c3
Removed `--with-softnet` flag (#401)
Fixes #276
2023-02-05 21:56:23 +04:00
Fedor Korotkov f34aa5f072
JSON output for get and list commands (#394)
* JSON output for `get` and `list` commands

In the light of the upcoming `1.0.0` release and stabilizing of the API, let's introduce some breaking changes for the good.

Removed all the `--cpu`, `--memory`, `--disk` and `--display` flags and replaced with a single `--json` flag for machine-readable output.

Added `--json` option to the `list` command to output a single JSON list. Notably removed `--quite` flag since it seemed unnecessary.

Fixes #297

* Added Size to `list` output

Fixes #379

* Added running state to `get`

Fixes #393

* Better signature

* Updated tests

* More test fixes
2023-02-04 11:40:39 +04:00
Fedor Korotkov ecc5de18be
Collect installation information (#390) 2023-02-02 06:12:28 -05:00
Nikolay Edigaryev 41af674a88
Introduce "tart import" and "tart export" commands (#386)
* Introduce "tart import" and "tart export" commands

* Use AppleArchive instead of ZIP and simply {ar,un}chive the VM dir

* Fix formatting

* Link to Apple's docs

* Print "importing..." and "exporting..." lines
2023-02-01 15:27:05 -05:00
Ekaterina Martyshevskaia 9c48d66674
Docs: add Spotlights and Testimonials section for landing page (#389)
* Draft

* Keep media queries at the end + get rid of dduplicate values

* Open external links in a separate window

* Minors

* Remove paragraph from Hero + add links

* Update img

* Remove unnecessary

* Layout adjustment

* Change animated logo position

* Shrink space between sections in mobile
2023-01-31 11:12:20 -05:00
Fedor Korotkov 31b106a67a
Move FAQ to documentation website (#383)
Also reworked most of the questions and add new one about accessing services running on host.
2023-01-18 11:58:21 -05:00
fedor abb1d7192a Documentation code block tweaks 2023-01-17 15:14:03 -05:00
fedor 8b8faa2f1a Enable social plugin for documentation 2023-01-17 14:57:06 -05:00
Fedor Korotkov c8c22e8c4d
Removed Git LFS (#382) 2023-01-17 23:47:35 +04:00
Fedor Korotkov bd87e1a8b1
Documentation Website (#380)
* Move to mkdocs for docs

* Deploy task

* Custom landing page

* Setup Google Analytics

* Cropped animation

* Update docs/theme/overrides/home.html

Co-authored-by: Nikolay Edigaryev <edigaryev@gmail.com>

* Direct to website and discussions

Co-authored-by: Nikolay Edigaryev <edigaryev@gmail.com>
2023-01-17 19:08:30 +00:00
Nikolay Edigaryev ba4f00fa78
Fix ArgumentParser's exception printing (#367) 2022-12-21 18:06:01 +04:00
Nikolay Edigaryev 1380ece108
Use separate exception codes for better Sentry grouping (#363) 2022-12-19 17:40:55 +00:00
Fedor Korotkov 9cdb7087f2
Fixed --help (#361)
* Fixed --help

Apparently `--help` works via exceptions 🤷‍♂️

Fixes #360

* lint issue
2022-12-17 20:57:17 +04:00
Nikolay Edigaryev c3e37854c3
.cirrus.yml: install Sentry CLI (#356) 2022-12-15 22:28:21 +00:00
Fedor Korotkov 828351a8fb
Report pull metrics to Sentry (#354)
* Report GC events to Sentry

* Formatting

* Use transactions for measuring pull duration on cache miss

* Fixed linting

* Explicitly enable capturing of failed requests

* Allow customizing tracesSampleRate

* bindToScope

* Measure compressed disk size

* Don't capture GC events
2022-12-15 16:53:34 -05:00
Nikolay Edigaryev f9ac994e18
Fix inverted VMStorageOCI.link() logic (#355) 2022-12-15 21:18:33 +00:00
marc-48k fdeaf979c2
Get command (#353)
* (wip) First pass at Get command.

* Adds validation in case multiple options are supplied.
2022-12-15 22:52:22 +04:00
Nikolay Edigaryev d9f1c37cdd
Sentry integration (#352)
* Ditch Foundation.exit()'s where feasible

* Sentry integration

* SwiftFormat

* Upload symbols and sources to Sentry

* Use Sentry Releases

* Do not use ExitCode exceptions

* Clarify why we need CustomNSError extension
2022-12-15 13:50:21 +00:00
Fedor Korotkov 81253417a4
Optimal buffer sizes for Softnet socket (#351)
* Optimal buffer sizes for Softnet socket

* Formatting
2022-12-14 23:18:39 +04:00
marc-48k c9caeab098
Filter tart list by source (#349)
* Adds Option to filter VMs by 'source'

* Tidy up columns for table on some Terminals

* Don't show headers if there's an error.

* Fixes linting errors.

* Update Sources/tart/Commands/List.swift

- removing the short name for now, as we don't know if we may need -s in the future
- removing the capitalization for the word "source" and adding an example instead

Co-authored-by: Nikolay Edigaryev <edigaryev@gmail.com>

* source should be an Optional flag. Reverts header change.

Co-authored-by: Nikolay Edigaryev <edigaryev@gmail.com>
2022-12-14 13:08:35 -05:00
marc-48k 6d7dc40c57
Doco fixups (#350)
* Fix-ups and SSH howto

* Minor corrections, additions and normalizations

* Fixes SSH command.

* Update README.md

Co-authored-by: Fedor Korotkov <fedor.korotkov@gmail.com>

Co-authored-by: Fedor Korotkov <fedor.korotkov@gmail.com>
2022-12-14 21:49:37 +04:00
Nikolay Edigaryev 15b26f78ae
Registry: include port when looking up credentials (#346) 2022-12-05 09:56:48 -05:00
Nikolay Edigaryev d9f4f9e954
Switch to github.com/nicklockwood/SwiftFormat version 0.50.6 (#345) 2022-12-05 11:11:57 +04:00
Nikolay Edigaryev 31635e59d7
Don't swallow VZVirtualMachine.start() exceptions (#343)
* Don't swallow VZVirtualMachine.start() exceptions

* Rename task to startTask for clarity

* No need to use "self"
2022-12-01 14:03:21 -05:00
Nikolay Edigaryev e061d00afc
Fix SwiftFormat's URL/glob mishandling (#342)
* Fix SwiftFormat's URL/glob mishandling

* Revert "Fix SwiftFormat's URL/glob mishandling"

This reverts commit 4d1a4c7fb3.

* Use a fixed SwiftFormat

* Another SwiftFormat fix

* Update .cirrus.yml

Co-authored-by: Fedor Korotkov <fedor.korotkov@gmail.com>
2022-11-30 17:53:25 +00:00
Nikolay Edigaryev 4555dd5824
README.md: document --dir (#338) 2022-11-30 18:12:06 +04:00
Nikolay Edigaryev ad9c3c661e
Reformat code idents and introduce the SwiftFormat linter (#339)
* Package.swift: add SwiftFormat

Can be invoked with "swift package plugin swiftformat".

* $ swift package plugin swiftformat

* .cirrus.yml: run SwiftFormat

* SwiftFormat: exclude Sources/tart/OCI/Reference/Generated
2022-11-29 15:56:13 +00:00
Nikolay Edigaryev c27d4a089c
OCI: WWW-Authenticate's scheme should be treated case-insensitive (#336) 2022-11-25 16:59:38 +04:00
Nikolay Edigaryev 70f9fcc12e
tart run: do not check --disk lock for read-only attachments (#334) 2022-11-22 22:37:48 -05:00
Nikolay Edigaryev 456ebc1c7b
Rosetta support (#324) 2022-11-21 12:56:27 -05:00
Nikolay Edigaryev 14cbc727ad
tart run: check if the disks are locked (#333) 2022-11-21 17:42:53 +04:00
Fedor Korotkov 03e6d9345d
Document list of users (#332)
Fixes #208
2022-11-21 12:34:24 +04:00
Nikolay Edigaryev c09cbefdd0
VZVirtualMachineDelegate implementation: show the error details (#330) 2022-11-18 18:51:26 +04:00
Fedor Korotkov 3896728eb9
Added Code Owners (#328)
* Added Code Owners

* Rename gi to CODEOWNERS
2022-11-17 22:57:12 -05:00
sheldonneuberger-sc de993fbf6d
use 64bit int for memory (#327) 2022-11-16 14:52:28 -05:00
Nikolay Edigaryev f08ddf3855
Fetch IPSWs via file (#322) 2022-11-15 10:01:52 +04:00
Nikolay Edigaryev 8524d93741
Integration tests (#313)
* Integration tests

* Set "HOMEBREW_NO_AUTO_UPDATE=1" for virtualenv installation step

* Use CIRRUS_WORKING_DIR as temporary directory if present
2022-11-14 13:24:51 -05:00
Nikolay Edigaryev 833c162187
tart stop: return a different exit code when VM is not running (#321)
See https://github.com/cirruslabs/tart/pull/316#issuecomment-1311556674.
2022-11-11 14:20:21 -05:00
Fedor Korotkov 31ba71dad7
Option to provide registry credentials via environment variables (#320)
Fixes #124
2022-11-11 18:32:23 +04:00
Nikolay Edigaryev 5e77968989
Introduce "tart stop" (#316) 2022-11-11 07:59:22 +04:00
Evan Burkey f37372da28
Implement Get command (#309) 2022-11-10 09:14:14 +04:00