Skip to content

Conversation

@HakkyuKim
Copy link
Contributor

@HakkyuKim HakkyuKim commented Sep 30, 2021

This PR allows creating and deleting emulators during tests. The feature is required to run multiple self-hosted runners on a single machine.

Contributes to #230.
Depends on #229, will rebase after #229 is merged. (done)

Run the following command to test:

./tools/run_command.py test \
  --plugins wakelock \
  --use-ephemeral-targets \
  --platforms wearable-5.5

...
============= TEST RESULT =============
SUCCEEDED: wakelock ('wearable-5.5', 'wearable-5_5-16437', None)
All tests passed!

Miscs:

Limitation:

  • Need to have emulator packages of the corresponding platform installed using the Tizen Package Manager.

@github-actions github-actions bot added the tools label Sep 30, 2021
@HakkyuKim HakkyuKim marked this pull request as ready for review October 1, 2021 08:28
@HakkyuKim HakkyuKim marked this pull request as draft October 5, 2021 00:54
- Improve/update/add/move documentation.
- Remove legacy class member of `TargetManager`, `target_per_id`.
- Raise exception in `EphemeralTarget.create()` on failure.
- Add trailing commas in some parameter lists for readability.
- Rename `TargetManager.platforms()` to `TargetManager.get_platforms()`.
- Call `super().__init__()` first in `EphemeralTargetManager.__init__()`.
- Call `super().__exit__()` in `EphemeralTargetManager.__exit__()`.
Also:
- Exit tool if --use-ephemeral-targets option is
  not used with --platforms.
- Include Tizen version in created ephemeral target name.
Also:
- Use valid characters for target name.
Also
- Group imports from same module.
--use-ephermeral-targets.

Also:
- Make --platforms and --recipe options mutually
  exclusive.
@HakkyuKim HakkyuKim marked this pull request as ready for review October 5, 2021 01:26
@HakkyuKim
Copy link
Contributor Author

@WonyoungChoi
Thanks for the review, I've made changes based on your suggestion.

Copy link
Contributor

@WonyoungChoi WonyoungChoi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

Copy link
Member

@bwikbs bwikbs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's going a lot faster than I imagined. AWESOME!!! 💯

@HakkyuKim HakkyuKim merged commit 67594b8 into flutter-tizen:master Oct 7, 2021
@HakkyuKim HakkyuKim deleted the ephemeral-targets branch December 21, 2021 04:34
bwikbs pushed a commit to bwikbs/plugins that referenced this pull request Mar 26, 2022
* Use TargetManager with "with" statement

* Implement ephmeral target features

* Clean ups

- Improve/update/add/move documentation.
- Remove legacy class member of `TargetManager`, `target_per_id`.
- Raise exception in `EphemeralTarget.create()` on failure.
- Add trailing commas in some parameter lists for readability.
- Rename `TargetManager.platforms()` to `TargetManager.get_platforms()`.
- Call `super().__init__()` first in `EphemeralTargetManager.__init__()`.
- Call `super().__exit__()` in `EphemeralTargetManager.__exit__()`.

* Validate --platforms option

Also:
- Exit tool if --use-ephemeral-targets option is
  not used with --platforms.
- Include Tizen version in created ephemeral target name.

* Support tv profile

Also:
- Use valid characters for target name.

* Remove if statement in choosing subcommands

Also
- Group imports from same module.

* Document dependent executables info

* Allow either --platforms or --recipe with

--use-ephermeral-targets.

Also:
- Make --platforms and --recipe options mutually
  exclusive.

* Update based on review

* Store pid in launch and use it in poweroff

Also:
- Use kill command for powering off targets for all device
profiles.

* Remove unnecessry cwd argument in some places
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants