Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: sfdx to sf for install package and org assign permset #5424

Merged
merged 4 commits into from
Feb 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/_articles/en/apex/interactive-debugger.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,4 +157,5 @@ These entry points aren’t supported:
- When you perform a SOQL query for variables from the EntityDefinition table, your results include the `durableId` even if you don’t explicitly `SELECT` that variable.

### See Also

[Apex Interactive Debugger](https://developer.salesforce.com/blogs/engineering/2016/01/apex-interactive-debugger)
2 changes: 1 addition & 1 deletion docs/_articles/ja/apex/interactive-debugger.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ VS Code で初めて Apex デバッガを使用するときは、次の設定手
1. **[割り当てを追加]** をクリックします。
1. 権限セットを割り当てるユーザを選択して、**[割り当て]** をクリックします。
1. **[完了]** をクリックします。
1. **省略可能**: VS Code で、**[SFDX: Pull Source from Default Scratch Org \(SFDX: デフォルトのスクラッチ組織からソースをプル\)]** を実行します。次に、新しい権限セットをソース制御リポジトリに追加します。Salesforce DX プロジェクトに権限セットのコピーがある場合は、`sfdx force:user:permset:assign -n Your_Perm_Set_Name` を実行してスクラッチ組織ユーザに権限を割り当てることができます。
1. **省略可能**: VS Code で、**[SFDX: Pull Source from Default Scratch Org \(SFDX: デフォルトのスクラッチ組織からソースをプル\)]** を実行します。次に、新しい権限セットをソース制御リポジトリに追加します。Salesforce DX プロジェクトに権限セットのコピーがある場合は、`sf org assign permset --name Your_Perm_Set_Name` を実行してスクラッチ組織ユーザに権限を割り当てることができます。
1. VS Code で、Apex デバッガの起動設定を作成します。
1. [Debug \(デバッグ\)] ビューを開くには、VS Code の [Activity Bar \(アクティビティバー\)] で、バグアイコン \(フロート表示テキスト: [Debug \(デバッグ\)]\) をクリックします。
1. `launch.json` ファイルを作成するには、ギアアイコン \(フロート表示テキスト: [Configure or Fix launch.json \(launch.json の設定または修正\)]\) をクリックして、**[Apex Debugger \(Apex デバッガ\)]** を選択します\(このファイルをすでに作成している場合は、ギアアイコンをクリックするとファイルが開きます\)。
Expand Down
4 changes: 2 additions & 2 deletions docs/_articles/ja/localdev/set-up-lwc-local-dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ LWC の ローカル開発を設定するには、サーバをインストール
コマンドラインインターフェースから次のコマンドを実行します。

```
sfdx plugins:install @salesforce/lwc-dev-server
sf plugins install @salesforce/lwc-dev-server
```

> **トラブルシューティングのヒント:** 既知の問題のため、プラグインをインストールする際にエラーが表示される可能性があります。プラグインがインストールされているかどうかを確認するために、`sfdx plugins --core` を実行してください。インストールされていたら、ローカル開発サーバを起動してみてください。成功すれば、次に進むことができます。
> **トラブルシューティングのヒント:** 既知の問題のため、プラグインをインストールする際にエラーが表示される可能性があります。プラグインがインストールされているかどうかを確認するために、`sf plugins --core` を実行してください。インストールされていたら、ローカル開発サーバを起動してみてください。成功すれば、次に進むことができます。

**SFDX: Preview Component Locally \(SFDX: コンポーネントをローカルでプレビュー\)** を選択すると、コマンドパレットにプレビューオプションのリストが表示されます。コンポーネントのプレビューをデスクトップのブラウザで行うか、仮想モバイルデバイス (iOS または Android) で行うかを選択できます。モバイルでのプレビューには追加設定が必要です。詳細は、『Lightning Web コンポーネント開発者ガイド』 の[「モバイルでの Lightning Web コンポーネントのプレビュー (ベータ)」](https://developer.salesforce.com/docs/component-library/documentation/ja-jp/lwc/lwc.mobile_extensions)を参照してください。
8 changes: 4 additions & 4 deletions docs/_articles/ja/source-control/source-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ lang: ja

VS Code 向け Salesforce 拡張機能でソースのプッシュ、プル、リリース、取得に使用するコマンドは、ファイルが \(メタデータ形式ではなく\) ソース形式であると想定しています。ソース形式は、バージョン管理システムで作業しやすいように最適化されています。詳細は、『Salesforce DX 開発者ガイド』の[「Salesforce DX プロジェクトの構造とソース形式」](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_source_file_format.htm)を参照してください。

Force.com IDE ではメタデータ形式を使用していたため、VS Code で Force.com IDE プロジェクトを開くことはできません。このトピックで説明するコマンドを操作するには、メタデータをソース形式に変換するか \(`sfdx force:mdapi:convert` を使用\)、新しいプロジェクトを作成して、以前の IDE で使っていたマニフェスト \(`package.xml` ファイル\) を使用して組織からメタデータを取得します。
Force.com IDE ではメタデータ形式を使用していたため、VS Code で Force.com IDE プロジェクトを開くことはできません。このトピックで説明するコマンドを操作するには、メタデータをソース形式に変換するか \(`sf project convert mdapi` を使用\)、新しいプロジェクトを作成して、以前の IDE で使っていたマニフェスト \(`package.xml` ファイル\) を使用して組織からメタデータを取得します。

## メタデータ形式からソース形式への変換および Git 履歴の維持

Expand Down Expand Up @@ -41,11 +41,11 @@ Force.com IDE ではメタデータ形式を使用していたため、VS Code

1. Git リポジトリの外で一時的な SFDX プロジェクトを作成します。この一時的なプロジェクトには Salesforce のプロジェクトで必要とされるディレクトリ構造や設定ファイルがあります。

`$ sf project:generate -n tempproj`
`$ sf project generate -name tempproj`

2. メタデータ内のプロジェクトを一時的なプロジェクトに変換します。

`$ sfdx force:mdapi:convert --rootdir ./project/metadata --outputdir ./tempproj`
`$ sf project convert mdapi --root-dir ./project/metadata --output-dir ./tempproj`

これで、プロジェクトのコピーが 2 つできました。1 つは元の場所にあり、もう 1 つは新しいディレクトリ `temproj` にあり、ソース形式に変換した後のプロジェクトファイルが保存されます。

Expand Down Expand Up @@ -99,7 +99,7 @@ Force.com IDE ではメタデータ形式を使用していたため、VS Code
```text
`$ git config merge.renameLimit 999999`

`$ sfdx force:mdapi:convert -r src -d src2`
`$ sf project convert mdapi --root-dir src --output-dir src2`

`$ rm -rf src`

Expand Down
8 changes: 4 additions & 4 deletions packages/salesforcedx-test-utils-vscode/src/orgUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -176,10 +176,10 @@ export const assignPermissionSet = async (
): Promise<void> => {
const execution = new CliCommandExecutor(
new SfdxCommandBuilder()
.withArg('force:user:permset:assign')
.withFlag('--permsetname', permissionSetName)
.withFlag('--targetusername', username)
.withJson()
.withArg('org:assign:permset')
.withFlag('--name', permissionSetName)
.withFlag('--target-org', username)
.withJson(false)
.build(),
{ cwd: process.cwd() }
).execute();
Expand Down
6 changes: 3 additions & 3 deletions packages/salesforcedx-vscode-core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,7 @@
],
"commandPalette": [
{
"command": "sfdx.force.package.install",
"command": "sfdx.package.install",
"when": "sfdx:project_opened && sfdx:has_default_username"
},
{
Expand Down Expand Up @@ -619,8 +619,8 @@
},
"commands": [
{
"command": "sfdx.force.package.install",
"title": "%force_package_install_text%"
"command": "sfdx.package.install",
"title": "%package_install_text%"
},
{
"command": "sfdx.org.login.web.dev.hub",
Expand Down
2 changes: 1 addition & 1 deletion packages/salesforcedx-vscode-core/package.nls.ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"force_diff_folder_against_org": "SFDX: フォルダと組織の差分を表示",
"force_lightning_lwc_test_create_text": "SFDX: Lightning Web コンポーネントのテストを作成",
"force_manifest_editor_show_text": "SFDX: パッケージマニフェストエディタを表示",
"force_package_install_text": "SFDX: パッケージをインストール",
"package_install_text": "SFDX: パッケージをインストール",
"force_sobjects_refresh": "SFDX: SObject 定義を更新",
"force_source_deploy_in_manifest_text": "SFDX: マニフェストファイルのソースを組織へデプロイ",
"force_source_deploy_text": "SFDX: 組織へソースをデプロイ",
Expand Down
2 changes: 1 addition & 1 deletion packages/salesforcedx-vscode-core/package.nls.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
"force_lightning_lwc_test_create_text": "SFDX: Create Lightning Web Component Test",
"rename_lightning_component_text": "SFDX: Rename Component",
"force_manifest_editor_show_text": "SFDX: Show Package Manifest Editor",
"force_package_install_text": "SFDX: Install Package",
"package_install_text": "SFDX: Install Package",
"force_sobjects_refresh": "SFDX: Refresh SObject Definitions",
"force_source_deploy_in_manifest_text": "SFDX: Deploy Source in Manifest to Org",
"force_source_deploy_text": "SFDX: Deploy Source to Org",
Expand Down
6 changes: 3 additions & 3 deletions packages/salesforcedx-vscode-core/src/commands/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,11 @@ export { projectGenerateManifest } from './projectGenerateManifest';
export { DescribeMetadataExecutor, describeMetadata } from './describeMetadata';
export { ListMetadataExecutor, listMetadata } from './listMetadata';
export {
ForcePackageInstallExecutor,
PackageInstallExecutor,
SelectInstallationKey,
SelectPackageID,
forcePackageInstall
} from './forcePackageInstall';
packageInstall
} from './packageInstall';
export {
ForceRefreshSObjectsExecutor,
checkSObjectsAndRefresh,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,13 @@ import {
SfdxCommandletExecutor
} from './util';

type forcePackageInstallOptions = {
type packageInstallOptions = {
packageId: string;
installationKey: string;
};

export class ForcePackageInstallExecutor extends SfdxCommandletExecutor<
PackageIdAndInstallationKey
> {
private readonly options: forcePackageInstallOptions;
export class PackageInstallExecutor extends SfdxCommandletExecutor<PackageIdAndInstallationKey> {
private readonly options: packageInstallOptions;

public constructor(options = { packageId: '', installationKey: '' }) {
super();
Expand All @@ -40,13 +38,13 @@ export class ForcePackageInstallExecutor extends SfdxCommandletExecutor<

public build(data: PackageIdAndInstallationKey): Command {
const builder = new SfdxCommandBuilder()
.withDescription(nls.localize('force_package_install_text'))
.withArg('force:package:install')
.withDescription(nls.localize('package_install_text'))
.withArg('package:install')
.withFlag('--package', data.packageId)
.withLogName('force_package_install');
.withLogName('package_install');

if (data.installationKey) {
builder.withFlag('--installationkey', data.installationKey);
builder.withFlag('--installation-key', data.installationKey);
}

return builder.build();
Expand Down Expand Up @@ -83,7 +81,8 @@ export class SelectPackageID implements ParametersGatherer<PackageID> {
}

export class SelectInstallationKey
implements ParametersGatherer<InstallationKey> {
implements ParametersGatherer<InstallationKey>
{
private readonly prefillValueProvider?: () => string;

constructor(prefillValueProvider?: () => string) {
Expand Down Expand Up @@ -119,9 +118,9 @@ const parameterGatherer = new CompositeParametersGatherer(
const sfdxPackageInstallCommandlet = new SfdxCommandlet(
workspaceChecker,
parameterGatherer,
new ForcePackageInstallExecutor()
new PackageInstallExecutor()
);

export async function forcePackageInstall() {
export async function packageInstall() {
await sfdxPackageInstallCommandlet.run();
}
10 changes: 5 additions & 5 deletions packages/salesforcedx-vscode-core/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ import {
orgLoginAccessToken,
projectGenerateManifest,
forceLightningLwcTestCreate,
forcePackageInstall,
packageInstall,
forceRefreshSObjects,
renameLightningComponent,
forceSourceDeployManifest,
Expand Down Expand Up @@ -335,9 +335,9 @@ function registerCommands(
sfProjectGenerate
);

const forcePackageInstallCmd = vscode.commands.registerCommand(
'sfdx.force.package.install',
forcePackageInstall
const packageInstallCmd = vscode.commands.registerCommand(
'sfdx.package.install',
packageInstall
);
const projectGenerateWithManifestCmd = vscode.commands.registerCommand(
'sfdx.project.generate.with.manifest',
Expand Down Expand Up @@ -437,7 +437,7 @@ function registerCommands(
orgDisplayDefaultCmd,
orgDisplayUsernameCmd,
projectGenerateCmd,
forcePackageInstallCmd,
packageInstallCmd,
projectGenerateWithManifestCmd,
apexGenerateTriggerCmd,
startApexDebugLoggingCmd,
Expand Down
2 changes: 1 addition & 1 deletion packages/salesforcedx-vscode-core/src/messages/i18n.ts
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ export const messages = {
'SFDX: Execute Anonymous Apex with Editor Contents',
force_anon_apex_execute_selection_text:
'SFDX: Execute Anonymous Apex with Currently Selected Text',
force_package_install_text: 'SFDX: Install Package',
package_install_text: 'SFDX: Install Package',
project_generate_text: 'SFDX: Create Project',
project_generate_open_dialog_create_label: 'Create Project',
project_generate_standard_template: 'Standard project template (default)',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@ import { expect } from 'chai';
import * as sinon from 'sinon';
import * as vscode from 'vscode';
import {
ForcePackageInstallExecutor,
PackageInstallExecutor,
SelectInstallationKey,
SelectPackageID
} from '../../../src/commands';
import { nls } from '../../../src/messages';

// tslint:disable:no-unused-expression
describe('Force Package Install', () => {
describe('Package Install', () => {
describe('SelectPackageID Gatherer', () => {
const EVENT_CANCEL = 'CANCEL';
const EVENT_CONTINUE = 'CONTINUE';
Expand Down Expand Up @@ -106,31 +106,31 @@ describe('Force Package Install', () => {
it('Should build the package install command', async () => {
const TEST_PACKAGE_ID = 'testPackageID';
const TEST_INSTALLATION_KEY = 'testInstallationKey';
const forcePackageInstallExecutor = new ForcePackageInstallExecutor();
const createCommand = forcePackageInstallExecutor.build({
const packageInstallExecutor = new PackageInstallExecutor();
const createCommand = packageInstallExecutor.build({
packageId: TEST_PACKAGE_ID,
installationKey: TEST_INSTALLATION_KEY
});
expect(createCommand.toCommand()).to.equal(
`sfdx force:package:install --package ${TEST_PACKAGE_ID} --installationkey ${TEST_INSTALLATION_KEY}`
`sfdx package:install --package ${TEST_PACKAGE_ID} --installation-key ${TEST_INSTALLATION_KEY}`
);
expect(createCommand.description).to.equal(
nls.localize('force_package_install_text')
nls.localize('package_install_text')
);
});
it('Should build the package install command without installation key', async () => {
const TEST_PACKAGE_ID = 'testPackageID';
const TEST_INSTALLATION_KEY = '';
const forcePackageInstallExecutor = new ForcePackageInstallExecutor();
const createCommand = forcePackageInstallExecutor.build({
const packageInstallExecutor = new PackageInstallExecutor();
const createCommand = packageInstallExecutor.build({
packageId: TEST_PACKAGE_ID,
installationKey: TEST_INSTALLATION_KEY
});
expect(createCommand.toCommand()).to.equal(
`sfdx force:package:install --package ${TEST_PACKAGE_ID}`
`sfdx package:install --package ${TEST_PACKAGE_ID}`
);
expect(createCommand.description).to.equal(
nls.localize('force_package_install_text')
nls.localize('package_install_text')
);
});
});
Expand Down
Loading