Azureデプロイ時 git push origin main が失敗する場合 [Azure]
Azureアプリのgit pushが次のエラーで失敗する場合の対処。
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 6 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 394 bytes | 394.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Deploy Async
remote: The current deployment branch is 'master', but nothing has been pushed to it
.....
ブランチを明示的に指定する。
参照
https://learn.microsoft.com/ja-jp/azure/app-service/deploy-local-git?tabs=cli#troubleshoot-deployment↓
https://learn.microsoft.com/ja-jp/azure/app-service/deploy-local-git?tabs=cli#change-deployment-branch
UWPでToast Notificationするサンプル [Windows]
バリエーションは Windows-universal-samples-master とかで検索してあれする。
{
var xdoc = new Windows.Data.Xml.Dom.XmlDocument();
xdoc.LoadXml(@"<toast launch=""app-defined-string"">
<visual>
<binding template=""ToastGeneric"">
<text>Sample</text>
<text>This is a simple toast notification example</text>
<image placement=""AppLogoOverride"" src=""Assets/StoreLogo.png"" />
</binding>
</visual>
<actions>
<action content=""check"" arguments=""check"" imageUri=""Assets/check.png"" />
<action content=""cancel"" arguments=""cancel"" imageUri=""Assets/cancel.png"" />
</actions>
<audio src=""ms-winsoundevent:Notification.Reminder"" />
</toast>");
var tn = new Windows.UI.Notifications.ToastNotification(xdoc);
Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier().Show(tn);
}
このタイミングでMADOSMA [ハードウェア]
新機種がいろんな会社から出そろう流れだが、ひとまずこれ。ヨドバシカメラはいつものおかしいスピードで、夜1時に注文すると9時前に配達完了してくれる。
思った通り動作が軽い。アップデートで再起動たくさん。
Windows 10 Mobileを待ちながら積極的に遊んでみる。
Windowsでパスが長すぎるファイルを作る方法 [Windows]
ファイルパスを収集するツールを書いていて、存在するファイルに対して .NETのSystem.IO.File.Exists()がfalseを返す現象に遭遇した。
特殊な属性またはパスが深いせいかとググると「WindowsのMAX_PATHは260で、パスを表現できる文字数はそこからヌルストップを除いた259文字」と。
(なおファイルシステムの制限ははるかに長くNTFS/FAT32とも32760文字。Windows Dev Center "File System Functionality Comparison"参照)
問題のパスは283文字だったのでコレと思われる。今回さほど問題ではないんだけど、こういうものを扱う機会もあるかもしれないので、なんとなくサンプルを作る。
1. ディレクトリ "F:\1234\"(ファイルパスに含まれるときデリミタ含め8文字) を作る。
F:\>mkdir F:\1234
2. その下に250文字、251文字のファイル名を持つ2ファイルを作る。
→ 上の8文字と合わせてフルパスはそれぞれ258/259文字になる。
(↓ 実際には"1234"の後で折り返さない)
F:\>echo > F:\1234\________________________________________________50_______________________________________________100_______________________________________________150_______________________________________________200_______________________________________________250
F:\>echo > F:\1234\________________________________________________50_______________________________________________100_______________________________________________150_______________________________________________200_______________________________________________250_
3. ディレクトリ名を1文字長くする。
→ フルパスは259/260文字になる。
F:\>rename F:\1234 12345
この結果、①パスの長さを保ったままXCOPYしようとすると長い方のファイル(パス260文字)は無視されて1個だけコピーされる。
F:\>xcopy F:\12345 F:\ABCDE
F:\ABCDE は受け側のファイル名ですか、
またはディレクトリ名ですか
(F= ファイル、D= ディレクトリ)? D
F:\12345\________________________________________________50_______________________________________________100_______________________________________________150_______________________________________________200_______________________________________________250
1 個のファイルをコピーしました
②パスをさらに長くしようとすると全て失敗する。
F:\>xcopy F:\12345 F:\123456
F:\123456 は受け側のファイル名ですか、
またはディレクトリ名ですか
(F= ファイル、D= ディレクトリ)? D
メモリが足りません
0 個のファイルをコピーしました
届いたRaspberry Piが起動しなかったけど解決 [ハードウェア]
手持ちのSDHCカードにOSイメージをddして電源ONしてもディスプレイに信号が来ない。
使っているHDMI-DVI変換ケーブルがダメか他の理由でディスプレイが信号を処理できてない?とか悩んだけど、実際はddの出し先(of=)指定がまずかった。
RPi Easy SD Card Setup - Copying an image to the SD Card in Linux (command line) の8に次の記述があって、パーティションで指定しちゃダメだよと。
Make sure the device name is the name of the whole SD card as described above, not just a partition of it (for example, sdd, not sdds1 or sddp1, or mmcblk0 not mmcblk0p1)
$ sudo dd bs=1M if=./2012-07-15-wheezy-raspbian.img of=/dev/sdd
で成功(of=/dev/sdd1 として失敗していた)。
そりゃそうだろう。これのハマりどころは「OSがちゃんと入っていないと映像信号が来ない」ところかと思う。
ちなみに電源にはeneloopモバイルブースター用のACアダプタを使ってみた。
VMwareのホストオンリーネットワーク設定 [VMware]
VMware「ホストオンリー」設定方法を簡単に。
1. ホスト側PCの「ネットワーク接続」で、リアルなネットワーク接続のプロパティを開き、[共有]タブ「ネットワークのほかのユーザーに…接続を許可する」をチェック、[ネットワーク接続の選択]で"VMware Virtual Ethernet Adapter for VMnet1"に対応する接続を選択する。
※上の画面はワイヤレスでインターネット接続しているホストの場合ですが、通常のLAN接続なら「ローカルエリア接続」のプロパティに読み替える。
[OK]すると警告が出るので「使用されるIPアドレスは…」の値をいちおう確認して[はい]。
2. 設定したいVMの[仮想マシン設定] - [ネットワークアダプタ] - [ネットワーク接続]で「ホストオンリー」を選択して[OK]。
3. ゲストOSの[ネットワーク接続]のプロパティを設定する(Windows XPの例)。
- [デフォルトゲートウェイ]を(先に確認した)ホストのアドレスにする
- [IPアドレス]をホストと同じネットワークの適当なアドレスにする
- (特に指定したいDNSがなければ)[優先DNSサーバー]をホストが使うのと同じアドレスにする
※わからなければホストで >ipconfig /all などで確認
HTC EVOを借りてきた [Android]
AndroidデバイスのHTC EVOを購入する予定で、受信状態確認用にauで貸してくれると聞いて借りてきた。
この端末に期待する第一の機能がテザリングなので、WiMAX接続+テザリングで通信速度が出ないと考え直しになる。
すばらしい(良いスコアを拾って挙げてるんだけど)。まだ使い始めて約一日だが、とりあえず期待したパフォーマンスは出ていて一安心。
HTC Developer Centerにあった "HTC Android USB Driver for Microsoft PC" をインストールし、USBデバッグ接続にも成功。
VMwareをバージョンアップするとホストオンリーネットワークが使えなくなる問題 [VMware]
バージョンアップすると毎回起きて、ほぼ毎回同じ対処をするんだけど時々忘れるのでメモ(ホストオンリーの設定方法はこちら) 。
前提として、
- VMをホストオンリーネットワークの設定で使う
- ホストOSがWindows
- ゲストOSをインターネットにつなぐために「Windowsのインターネット接続の共有」(ICS)を使っている
ここでICSを有効にしたままVMwareを更新インストールすると、たぶんICSが旧バージョンのVMware Virtual Ethernet Adapter for VMnet1(物理ネットワークアダプタが一個の環境ならきっと「ローカルエリア接続 2」 になる)を覚えていて、新しいインストールのVMnet1に接続できなくなるのかなぁ。
対策はICSを設定し直すこと。共有の親である「ローカルエリア接続」のプロパティから「共有」タブ → 「ネットワークのほかのユーザーに、このコンピューターのインターネット接続をとおしての接続を許可する」をOFF → [OK]、再度開いてON → [OK]。
eclipse + EPIC + ActivePerl のインストール [Perl]
環境は Windows 7(x86) + eclipse 3.5.2 + EPIC 0.6.35 + ActivePerl 5.10.1。
- ActivePerlをインストール
インストーラ(MSI)を実行するだけ。 - Eclipse SDKインストール
zipの中身を取り出すだけ。 - EPICインストール
[Help] - [Install New Software] - [Add] http://e-p-i-c.sourceforge.net/updates/testing
ここまで済ませて適当な文を実行すると下記のエラー。
Use of uninitialized value in subroutine dereference at (null) line 1.
perl5db.pl did not return a true value.
BEGIN failed--compilation aborted.
→ ググって
http://sourceforge.net/tracker/index.php?func=detail&aid=2907155&group_id=75859&atid=545274
のレポートを発見し、以下の2点を実施。 - ppmでPadWalkerをインストール
→ 現象変わらず。 - Include PathにPerl/libを追加
[Project] - [Properties] - [Perl Include Path], {ActivePerlのディレクトリ}/lib を選択して [Add to List]
→ 解決