MCPcopy Create free account
hub / github.com/KDE/kdevelop / executeOnDevice

Method executeOnDevice

plugins/flatpak/flatpakruntime.cpp:247–272  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

245}
246
247KJob * FlatpakRuntime::executeOnDevice(const QString& host, const QString &path) const
248{
249 const QString name = config()[QLatin1String("id")].toString();
250 const QString destPath = QStringLiteral("/tmp/kdevelop-test-app.flatpak");
251 const QString replicatePath = QStringLiteral("/tmp/replicate.sh");
252 const QString localReplicatePath = QStandardPaths::locate(QStandardPaths::AppDataLocation, QStringLiteral("kdevflatpak/replicate.sh"));
253 const auto runJobName = i18nc("%1 - application ID, %2 - device host name", "Flatpak Run %1 on %2", name, host);
254
255 const auto jobs = exportBundle(path).jobs
256 << QList<KJob*>{
257 createExecuteJob({QStringLiteral("scp"), path, host + QLatin1Char(':') + destPath},
258 i18nc("%1 - device host name", "Transfer .flatpak to %1", host)),
259 createExecuteJob({QStringLiteral("scp"), localReplicatePath, host + QLatin1Char(':') + replicatePath},
260 i18nc("%1 - device host name", "Transfer replicate.sh to %1", host)),
261 createExecuteJob(
262 {QStringLiteral("ssh"), host, QStringLiteral("flatpak"), QStringLiteral("install"),
263 QStringLiteral("--user"), QStringLiteral("--bundle"), QStringLiteral("-y"), destPath},
264 i18nc("%1 - application ID, %2 - device host name", "Flatpak Install %1 to %2", name, host)),
265 createExecuteJob({QStringLiteral("ssh"), host, QStringLiteral("bash"), replicatePath,
266 QStringLiteral("plasmashell"), QStringLiteral("flatpak"), QStringLiteral("run"), name},
267 runJobName, name)};
268
269 auto* const compositeJob = new ExecuteCompositeJob(parent(), jobs);
270 compositeJob->setObjectName(runJobName);
271 return compositeJob;
272}
273
274QJsonObject FlatpakRuntime::config(const KDevelop::Path& path)
275{

Callers 1

executeOnRemoteDeviceMethod · 0.80

Calls 3

createExecuteJobFunction · 0.85
parentFunction · 0.85
toStringMethod · 0.45

Tested by

no test coverage detected